結果
問題 |
No.2102 [Cherry Alpha *] Conditional Reflection
|
ユーザー |
|
提出日時 | 2022-10-15 01:30:53 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 836 bytes |
コンパイル時間 | 213 ms |
コンパイル使用メモリ | 82,164 KB |
実行使用メモリ | 181,544 KB |
最終ジャッジ日時 | 2024-06-26 19:03:48 |
合計ジャッジ時間 | 68,159 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 WA * 38 TLE * 4 -- * 11 |
ソースコード
n = int(input()) ll = [input() for i in range(n)] ans = [True]*n for y in [10**9+7,2**61-1]: ss = [] sh = [] b = 50 mod = y for i in range(n): aa = [] s = ll[i] tmp = 0 for i,c in enumerate(s): x = ord(c) - 97 aa.append(x) tmp += x*pow(b, i,mod) tmp %= mod sh.append(tmp) ss.append(aa) v = set() for i in range(n): flg = False if i == 0: v.add(sh[0]) else: x = sh[i] for j in range(len(ss[i])): if j == 0: continue num2 = ss[i][j] num1 = ss[i][j-1] tmp = x - num1*pow(b, j-1 , mod)%mod - num2*pow(b, j, mod)%mod + num1*pow(b, j, mod)%mod + num2*pow(b, j-1, mod)%mod tmp %= mod if tmp in v: flg = True v.add(x) ans[i] &= flg for i in ans: print('Yes') if i else print('No')