結果
| 問題 | No.6 使いものにならないハッシュ | 
| コンテスト | |
| ユーザー |  Kiri8128 | 
| 提出日時 | 2020-09-06 00:47:52 | 
| 言語 | PyPy3 (7.3.15) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 348 ms / 5,000 ms | 
| コード長 | 795 bytes | 
| コンパイル時間 | 182 ms | 
| コンパイル使用メモリ | 81,920 KB | 
| 実行使用メモリ | 134,036 KB | 
| 最終ジャッジ日時 | 2024-09-16 16:59:29 | 
| 合計ジャッジ時間 | 11,735 ms | 
| ジャッジサーバーID (参考情報) | judge1 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 32 | 
ソースコード
N = 200200
X = [-1] * (N+1)
L = [{} for _ in range(N+1)]
k = 2
while k <= N:
    X[k] = 1
    L[k][k] = 1
    for i in range(k*2, N+1, k):
        X[i] = 0
        L[i][k] = 1
    d = 2
    while k**d <= N:
        for i in range(k**d, N+1, k**d):
            L[i][k] += 1
        d += 1
    while k <= N and X[k] >= 0:
        k += 1
P = [i for i in range(N+1) if X[i] == 1]
K = int(input())
N = int(input())
for i in range(200200):
    if P[i] >= K:
        i0 = i
        break
ma = -1
ans = -1
for i, p in enumerate(P):
    if p < K: continue
    if p > N: break
    s = 0
    for j in range(i, i + 11):
        t = 1 << (P[j] % 9)
        if s & t or P[j] > N:
            if j - i >= ma:
                ma = j - i
                ans = P[i]
            break
        s |= t
print(ans)
            
            
            
        