結果

問題 No.2102 [Cherry Alpha *] Conditional Reflection
ユーザー aaaaaaaaaa2230
提出日時 2022-10-14 23:25:20
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 665 bytes
コンパイル時間 379 ms
コンパイル使用メモリ 82,328 KB
実行使用メモリ 175,560 KB
最終ジャッジ日時 2024-06-26 17:19:20
合計ジャッジ時間 39,398 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 34 WA * 36
権限があれば一括ダウンロードができます

ソースコード

diff #

base = 37
mod = 10**9 + 9
M = 10**6+2
pows = [1]*M
for i in range(1,M-1):
    pows[i] = pows[i-1]*base%mod


hash = [set() for i in range(M)]

n = int(input())
for _ in range(n):
    s = list(input())
    ls = len(s)
    
    find = 0
    num = 0
    for i,j in enumerate(s):
        k = ord(j)-ord("a")
        num += pows[i]*k
        num %= mod

    if num in hash[ls]:
        find = 1
    
    for i in range(ls-1):
        x = ord(s[i])-ord("a")
        y = ord(s[i+1])-ord("a")

        temp = num + (y-x)*pows[i]+ (x-y)*pows[i+1]
        temp %= mod
        if temp in hash[ls]:
            find = 1

    print("Yes" if find else "No")
    hash[ls].add(num)
0