結果
| 問題 |
No.6 使いものにならないハッシュ
|
| コンテスト | |
| ユーザー |
momoyuu
|
| 提出日時 | 2022-08-03 00:15:16 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 98 ms / 5,000 ms |
| コード長 | 999 bytes |
| コンパイル時間 | 412 ms |
| コンパイル使用メモリ | 82,232 KB |
| 実行使用メモリ | 78,240 KB |
| 最終ジャッジ日時 | 2024-07-23 18:29:34 |
| 合計ジャッジ時間 | 4,196 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 32 |
ソースコード
K = int(input())
N = int(input())
def calc(n):
now = n
while now >= 10:
a = str(now)
now = 0
for i in a:
now += int(i)
return now
def era(n):
"""
n以下の素数をリストで小さい順に返す。
O(nlognlogn)
"""
s = [1 for _ in range(n+1)]
for i in range(2,n+1):
if s[i] == 0:
continue
j = 2
while j * i <= n:
s[j*i] = 0
j += 1
l = []
for i in range(2,n+1):
if s[i] == 1:
l.append(i)
return l
l = era(N)
now = 0
li = []
nn = 0
for i in range(len(l)):
if l[i] < K:
continue
s = set()
k = 0
for j in range(10):
ni = i + j
k = j
if ni >= len(l):
break
a = calc(l[ni])
if a in s:
break
s.add(a)
if now <= k:
now = k
nn = l[i]
li = []
for j in range(now):
li.append(l[i + j])
print(nn)
momoyuu