結果
問題 | No.2994 べき内積 |
ユーザー |
![]() |
提出日時 | 2024-12-19 03:58:58 |
言語 | cLay (20241019-1) |
結果 |
AC
|
実行時間 | 19 ms / 2,000 ms |
コード長 | 528 bytes |
コンパイル時間 | 4,758 ms |
コンパイル使用メモリ | 184,168 KB |
実行使用メモリ | 9,796 KB |
最終ジャッジ日時 | 2024-12-19 03:59:05 |
合計ジャッジ時間 | 5,794 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 |
ソースコード
void f(ll n,double*a,double*r){ convolution(a,n,r,n,r,n); rep(i,n){ r[i]=fmod(floor(r[i]+.5),1009); } } { ll@m++,@n++,@k[m]; double@a[n]; double z[n]{1}; ll a0=a[0]; ll a1=n>1?a[1]:0; if(true){ ll c=k[0]; while(c){ if(c&1){ f(n,a,z); } c>>=1; f(n,a,a); } } if(m>1){ rep(i,n){ a[i]=0; } a[0]=a0; if(n>1009){ a[1009]=a1; } ll c=k[1]; while(c){ if(c&1){ f(n,a,z); } c>>=1; f(n,a,a); } } ll b=m>2?powmod(a0,sum[i,2,m](k[i]),1009):1; wt((ll)z(n)*b%1009); }