結果
| 問題 |
No.12 限定された素数
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2023-01-20 01:34:36 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 1,503 ms / 5,000 ms |
| コード長 | 889 bytes |
| コンパイル時間 | 443 ms |
| コンパイル使用メモリ | 82,424 KB |
| 実行使用メモリ | 320,260 KB |
| 最終ジャッジ日時 | 2024-06-22 18:36:06 |
| 合計ジャッジ時間 | 39,859 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 26 |
ソースコード
def eratosthenes(n):
primes=set(range(2,n+1))
for i in range(2,n):
if i in primes:
it = i ** 2
while it <= n:
if it in primes:
primes.remove(it)
it += i
return primes
P=sorted(list(eratosthenes(5*10**6)))
n=int(input())
A=list(map(int,input().split()))
digit = [0 for _ in range(10)]
for a in A:
digit[a]=1
ans=-1
n_digit = [0 for _ in range(10)]
P.append(5*10**6+1)
k=1
for i in range(len(P)-1):
p=P[i]
while(p>0):
n_digit[p%10]=1
p//=10
flag=1
for j in range(10):
if digit[j]==0 and n_digit[j]==1:
for l in range(10):
n_digit[l]=0
k=P[i]+1
flag=0
break
if digit[j]==1 and n_digit[j]==0:
flag=0
if flag==1:
ans=max(ans,P[i+1]-1-k)
print(ans)