結果
| 問題 |
No.194 フィボナッチ数列の理解(1)
|
| コンテスト | |
| ユーザー |
tails
|
| 提出日時 | 2020-10-29 22:52:38 |
| 言語 | cLay (20241019-1) |
| 結果 |
AC
|
| 実行時間 | 4 ms / 5,000 ms |
| コード長 | 529 bytes |
| コンパイル時間 | 3,453 ms |
| コンパイル使用メモリ | 185,920 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-05 14:39:53 |
| 合計ジャッジ時間 | 4,628 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 37 |
ソースコード
{
ll@n,@k;
Mint a[1d4+1];
rd(a(n));
if(n>30){
Mint f,s;
rep(i,n){
f+=a[i];
}
s=f+f;
a[n]=f;
int j=0;
rep(i,n+1,k){
a[j]=f=f+f-a[j];
if(++j>n) j=0;
s+=f;
}
wt(f,s);
}else{
Polynomial<Mint> b,c,m;
b.change(0,1);
c.change(1,1);
m.change(0,1);
m.change(n,-2);
m.change(n+1,1);
for(int j=40;j>=0;--j){
b*=b;
b%=m;
if(k-n&1l<<j){
b*=c;
b%=m;
}
}
Mint x,y,z;
rrep(i,n){
x+=a[i];
y-=x*b.c[0];
b*=c;
b%=m;
z-=x*b.c[0];
}
wt(z-y,z+x);
}
}
tails