結果
問題 |
No.16 累乗の加算
|
ユーザー |
![]() |
提出日時 | 2016-05-03 16:19:16 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 5,000 ms |
コード長 | 469 bytes |
コンパイル時間 | 561 ms |
コンパイル使用メモリ | 63,360 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-06-26 05:14:11 |
合計ジャッジ時間 | 1,201 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 14 |
ソースコード
#include<iostream> #define W 1000003 long long pow(long long x, int num) { if (num == 0) return 1; if (num == 1) return x; if (num % 2 == 0) { long long n = pow(x, num / 2); return (n * n) % W; } else { return pow(x, num - 1) * x % W; } } int main() { long long x, n; std::cin >> x >> n; long long ans = 0; for (int i = 0; i < n; i++) { int num; std::cin >> num; ans += pow(x, num); ans %= W; } std::cout << ans << std::endl; return 0; }