結果
| 問題 | No.16 累乗の加算 |
| コンテスト | |
| ユーザー |
bal4u
|
| 提出日時 | 2019-04-07 22:22:36 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 5,000 ms |
| コード長 | 502 bytes |
| コンパイル時間 | 203 ms |
| コンパイル使用メモリ | 29,696 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-06-28 00:20:03 |
| 合計ジャッジ時間 | 789 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 14 |
ソースコード
// yukicoder: No.16 累乗の加算
// 2019.4.7 bal4u
// 累乗の高速計算
#include <stdio.h>
#define MOD 1000003
int x, N;
int myPow(int x, int n) // x^n
{
long long ans = 1;
long long xx = x;
while (n > 0) {
if (n & 1) ans = (ans * xx) % MOD, n--;
else xx = (xx * xx) % MOD, n >>= 1;
}
return (int)ans;
}
int main()
{
int i, a, ans;
scanf("%d%d", &x, &N);
ans = 0;
for (i = 0; i < N; i++) {
scanf("%d", &a);
ans += myPow(x, a);
}
printf("%d\n", ans % MOD);
return 0;
}
bal4u