結果
| 問題 |
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)
Kiri8128