반응형
def eratos(b):
global prime
prime[0]=1
prime[1]=1
for i in range(2,b+1):
if(prime[i]>0) : continue
for j in range(i*i,b+1,i):
prime[j]=1
prime = [0 for i in range(1000000 +1)]
eratos(1000000)
n = int(input())
for i in range(n):
m = int(input())
if prime[m]==0:
print(m)
else:
j=1
f=0
while True:
if prime[m-j]==0:
print(m-j,end=" ")
f=1
if prime[m+j]==0:
print(m+j,end=" ")
f=1
if f==1:
print()
break
j+=1
반응형
'정올문제풀이' 카테고리의 다른 글
2814 : 이진수 (0) | 2021.11.29 |
---|---|
2813 : 소수의 개수 (0) | 2021.11.29 |
1740 : 소수 (0) | 2021.11.28 |
2811 : 소수와 합성수 (0) | 2021.11.28 |
1009 : 각 자리수의 역과 합(Number Reverse) (0) | 2021.11.28 |