結果

問題 No.12 限定された素数
ユーザー ytftytft
提出日時 2022-11-02 23:28:40
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 4,992 ms / 5,000 ms
コード長 643 bytes
コンパイル時間 289 ms
コンパイル使用メモリ 87,156 KB
実行使用メモリ 118,580 KB
最終ジャッジ日時 2023-09-24 10:32:26
合計ジャッジ時間 67,273 ms
ジャッジサーバーID
(参考情報)
judge15 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 4,537 ms
116,980 KB
testcase_01 AC 4,600 ms
117,788 KB
testcase_02 AC 4,219 ms
116,988 KB
testcase_03 AC 3,400 ms
116,656 KB
testcase_04 AC 4,656 ms
117,036 KB
testcase_05 AC 4,363 ms
118,176 KB
testcase_06 AC 4,558 ms
117,184 KB
testcase_07 AC 4,562 ms
117,008 KB
testcase_08 AC 4,276 ms
117,676 KB
testcase_09 AC 4,992 ms
117,364 KB
testcase_10 AC 4,293 ms
118,220 KB
testcase_11 AC 4,433 ms
117,088 KB
testcase_12 AC 4,732 ms
117,740 KB
testcase_13 AC 4,561 ms
117,320 KB
testcase_14 AC 4,248 ms
118,580 KB
testcase_15 AC 4,606 ms
117,528 KB
testcase_16 AC 4,579 ms
118,388 KB
testcase_17 AC 4,506 ms
117,444 KB
testcase_18 AC 4,455 ms
117,608 KB
testcase_19 AC 4,476 ms
117,524 KB
testcase_20 AC 4,216 ms
117,776 KB
testcase_21 AC 4,411 ms
117,648 KB
testcase_22 AC 4,400 ms
117,496 KB
testcase_23 AC 4,442 ms
117,136 KB
testcase_24 AC 4,724 ms
117,680 KB
testcase_25 AC 4,591 ms
117,856 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input=lambda:sys.stdin.readline().rstrip()
rang=5*10**6
isPrime=[1 for i in range(rang+1)]
isPrime[1]=0
for i in range(2,rang+1):
	if isPrime[i]:
		for j in range(i*2,rang+1,i):
			isPrime[j]=0
N=int(input())
A=list(map(int,input().split()))
target=[0 for i in range(10)]
used=[0 for i in range(10)]
for i in A:
	target[i]=1
K,ans=1,-1
for L in range(1,rang+1):
	for i in str(L):
		if isPrime[L]:
			used[int(i)]+=1
	while K<L and any([used[i]>0 and target[i]==0 for i in range(10)]):
		if isPrime[K]:
			for i in str(K):
				used[int(i)]-=1
		K+=1
	if all([(used[i]==0)^target[i] for i in range(10)]):
		ans=max(ans,L-K)
print(ans)
0