結果
問題 | No.6 使いものにならないハッシュ |
ユーザー |
|
提出日時 | 2019-10-23 22:02:11 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 165 ms / 5,000 ms |
コード長 | 889 bytes |
コンパイル時間 | 383 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 14,436 KB |
最終ジャッジ日時 | 2024-09-16 16:52:51 |
合計ジャッジ時間 | 4,642 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 32 |
ソースコード
K = int(input()) N = int(input()) def primes(n): primeList = set() isPrime = [True] * (n + 1) for i in range(2, n + 1): if isPrime[i]: primeList.add(i) k = i * 2 while k <= n: isPrime[k] = False k += i return primeList primeK = primes(K - 1) primeN = primes(N) rangePrimes = list(primeN - primeK) rangePrimes.sort() def f(n): while sum(map(int, str(n))) >= 10: n = sum(map(int, str(n))) return sum(map(int, str(n))) hashPrimes = [f(p) for p in rangePrimes] maxLeng = 0 V = set() M = len(hashPrimes) ans = -1 right = 0 for left in range(M): while right < M and (not hashPrimes[right] in V): V.add(hashPrimes[right]) right += 1 if maxLeng <= len(V): maxLeng = len(V) ans = left V.remove(hashPrimes[left]) print(rangePrimes[ans])