結果

問題 No.6 使いものにならないハッシュ
コンテスト
ユーザー わん
提出日時 2025-10-20 18:25:49
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 109 ms / 5,000 ms
コード長 715 bytes
コンパイル時間 3,471 ms
コンパイル使用メモリ 82,408 KB
実行使用メモリ 79,768 KB
最終ジャッジ日時 2025-10-20 18:25:58
合計ジャッジ時間 4,885 ms
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 32
権限があれば一括ダウンロードができます

ソースコード

diff #

from collections import deque

K = int(input())
N = int(input())

prime = []
M = 200001
isPrime = [True]*200001
isPrime[0] = isPrime[1] = False
for i in range(2, M):
  if isPrime[i]:
    prime.append(i)
    for j in range(i*i, M, i):
      isPrime[j] = False

lst = []
for p in prime:
  pp = str(p)
  while len(pp) > 1:
    x = 0
    for v in pp:
      x += int(v)
    pp = str(x)
  lst.append(pp)

dq0 = deque()
dq1 = deque()
max_length = 0
max_values = 0
for p, s in zip(prime, lst):
  if p < K: continue
  if p > N: break
  while dq0 and s in dq0:
    dq0.popleft()
    dq1.popleft()
  dq0.append(s)
  dq1.append(p)
  if max_length <= len(dq0):
    max_length = len(dq0)
    max_values = dq1[0]
print(max_values)
0