728x90
1929, 2581번 - 소수
2581번
임의의 자연수 a이상 b이하 구간에 있는 소수 구하기
import sys
a = int(sys.stdin.readline())
b = int(sys.stdin.readline())
number = [i for i in range(a, b+1)]
pr_num = []
def is_prime(num):
y = True
if num == 2:
y = True
elif num <= 1:
y = False
for n in range(2, num):
if (num % n) == 0:
y = False
return y
for n in number:
if is_prime(n) is True:
pr_num.append(n)
if len(pr_num) == 0:
print(-1)
else:
print(sum(pr_num))
print(min(pr_num))
임의의 자연수 a까지의 소수 구하기
import sys
a = int(sys.stdin.readline())
number = [i for i in range(a)]
pr_num = []
def is_prime(num):
y = True
if num == 2:
y = True
elif num <= 1:
y = False
for n in range(2, num):
if (num % n) == 0:
y = False
return y
for n in number:
if is_prime(n) is True:
pr_num.append(n)
if len(pr_num) == 0:
print("")
else:
print(pr_num)
1929번
더 빨리 소수를 구하는 문제
m, n = map(int,input().split())
for i in range(m, n+1):
if i == 1:
continue
for j in range(2, int(i**0.5)+1):
if i % j == 0:
break
else:
print(i)
위의 방법으로 임의의 자연수 a까지의 소수 구하기
n = map(int,input().split())
for i in range(n):
if i == 1:
continue
for j in range(2, int(i**0.5)+1):
if i % j == 0:
break
else:
print(i)
728x90