結果
問題 | No.16 累乗の加算 |
ユーザー |
![]() |
提出日時 | 2020-04-15 15:07:25 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 5,000 ms |
コード長 | 820 bytes |
コンパイル時間 | 1,175 ms |
コンパイル使用メモリ | 101,700 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-01 18:45:43 |
合計ジャッジ時間 | 1,900 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 14 |
ソースコード
// I SELL YOU...!#include<iostream>#include<vector>#include<algorithm>#include<functional>#include<queue>#include<chrono>#include<iomanip>#include<map>#include<set>using namespace std;using ll = long long;using P = pair<ll,ll>;using TP = tuple<ll,ll,ll>;void init_io(){cin.tie(0);ios::sync_with_stdio(false);cout << setprecision(18);}#define MOD 1000003map<ll,ll> mp;long long pmod(long long x, long long n) {if(mp.find(n)!=mp.end()){return mp[n];}if(n==0) return mp[n] = 1;if(n%2==0){ll v = pmod(x,n/2);return mp[n] = (v*v)%MOD;}return mp[n] = (x*pmod(x,n-1))%MOD;}signed main(){init_io();ll x,n,ans=0;cin >> x >> n;vector<ll> a(n);for(int i=0;i<n;i++){cin >> a[i];ans += pmod(x,a[i]);ans %= MOD;}cout << ans << endl;}