結果
問題 |
No.6 使いものにならないハッシュ
|
ユーザー |
|
提出日時 | 2015-02-16 23:23:58 |
言語 | Python2 (2.7.18) |
結果 |
RE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 649 bytes |
コンパイル時間 | 159 ms |
コンパイル使用メモリ | 7,040 KB |
実行使用メモリ | 9,756 KB |
最終ジャッジ日時 | 2024-09-16 16:24:14 |
合計ジャッジ時間 | 3,947 ms |
ジャッジサーバーID (参考情報) |
judge6 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 31 RE * 1 |
ソースコード
from bisect import * R = 200001 p = [1]*R p[0] = p[1] = 0 for i in xrange(2,int(R**0.5)): if p[i]: p[2*i::i] = [0]*(len(p[2*i::i])) p = [i for i in xrange(2,R) if p[i]] K = int(raw_input()) N = int(raw_input()) ans = mx = 0 H = [] for i in xrange(bisect(p,K),bisect(p,N)): s = str(p[i]) while len(s) > 1: s = str(sum(map(int,list(s)))) if s in H: if len(H) > mx: mx,ans = len(H),p[i-len(H)] elif len(H) == mx: ans = max(ans, p[i-len(H)]) while s in H: H.pop(0) H.append(s) else: if len(H) > mx: ans = p[i+1-len(H)] elif len(H) == mx: ans = max(ans, p[i+1-len(H)]) print ans