結果
問題 | No.765 ukuku 2 |
ユーザー |
![]() |
提出日時 | 2018-12-14 02:28:43 |
言語 | cLay (20241019-1) |
結果 |
AC
|
実行時間 | 72 ms / 3,000 ms |
コード長 | 567 bytes |
コンパイル時間 | 2,387 ms |
コンパイル使用メモリ | 173,488 KB |
実行使用メモリ | 10,312 KB |
最終ジャッジ日時 | 2024-07-05 13:14:46 |
合計ジャッジ時間 | 5,053 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 48 |
ソースコード
char s[3d5];ll n,t[2d5],u[2d5],v[2d5],h[128];ll nib(ll a,ll b){ll c=min(a,n-1-b)+1;ll d=0;while(d<c-1){ll e=(c+d)/2;if(t[a-e]-u[b+e]==(t[a]-u[b])*v[e]){d=e;}else{c=e;}}return d;}{rd(s);n=strlen(s);{Rand r;h[0..127]=r.get();ll d;d=0; t[n-(1..n)]=d=d*3+h[s[n-(1..)]];d=0; u[0..n-1]=d=d*3+h[s[0..]];d=1; (v[0..n-1]=d, d*=3);}{ll r=0;rep(i,n*2-1){ll a,b,d;d=nib(a=(i+1)/2,b=i/2);if(a-d>0) r>?=b+1-a+(d+nib(a-d-1,b+d))*2;if(b+d<n-1) r>?=b+1-a+(d+nib(a-d,b+d+1))*2;}wt(r);}}