結果
| 問題 |
No.16 累乗の加算
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-04-07 15:50:38 |
| 言語 | Fortran (gFortran 14.2.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 5,000 ms |
| コード長 | 594 bytes |
| コンパイル時間 | 1,970 ms |
| コンパイル使用メモリ | 32,000 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-06-26 11:04:04 |
| 合計ジャッジ時間 | 2,713 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 14 |
ソースコード
module mdl
implicit none
integer(kind=8),parameter::m=1000003
contains
integer(kind=8) function pow(a,pwr)
implicit none
integer(kind=8),value::a,pwr
pow=1
do while(pwr>0)
if(mod(pwr,2)==1)pow=mod(pow*a,m)
a=mod(a*a,m)
pwr=pwr/2
end do
end function
end module
program main
use mdl
implicit none
integer(kind=8)::i,j,l,r,x,y,n
integer(kind=8)::ret=0,a(100)
read(*,*)x,n
read*,(a(i),i=1,n)
do i=1,n
ret=mod(ret+pow(x,a(i)),m)
end do
print*,ret
end program