[백준 문제풀이] 4134 - 다음 소수
백준 문제풀이 4134번
풀이
- 효율적인 코드를 위해.
math.sqrt
로 주어진 숫자의 제곱근까지만 반복해 소수를 구한다(n의 약수는 무조건 1 ~ $\sqrt n$에 존재)
- num을 검사한다.
코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| import sys
import math
input = sys.stdin.readline
def primeNumber(x):
if x < 2:
return False
for i in range(2, int(math.sqrt(x) + 1)):
if x % i == 0:
return False
return x
T = int(input())
for i in range(T):
num = int(input())
while True:
if primeNumber(num) == False:
num += 1
else:
break
print(num)
|
댓글남기기