문제 이해
소수를 찾는 방법 중
그 수를 2부터 n-1까지 나눠서 나머지값이 0이 아니라면 그것은 소수이다.
문제 입력은 공백으로 구분하는 것이 아니라 \n으로 구분했다.
코드
m = int(input())
n= int(input())
num =[]
for i in range(m, n + 1):
error =0
if(i > 1):
for j in range(2, i):
#2부터 들어온 값까지
if(i % j == 0):
error += 1
break
if(error == 0):
num.append(i)
if(len(num) >0):
print(sum(num))
print(min(num))
else:
print(-1)
error 변수는 플래그 이다.
if문에서 j는 2부터 n-1값 까지 돌고 나눠서 0이 나온다면 그것은 소수가 아니라는 뜻이다.
그래서 break로 2번째 for문을 그만두고 다음 값을 찾는다.
728x90
'알고리즘 > 백준알고리즘' 카테고리의 다른 글
[백준 알고리즘/Python3] 1929 에라토스테네스의 체 (0) | 2021.10.31 |
---|---|
[백준 알고리즘/Python3] 11653 소인수분해 (0) | 2021.10.28 |
[백준 알고리즘/Python3] 2839 설탕배달 (0) | 2021.09.27 |
[백준 알고리즘/Python3] 2775 부녀회장이 될테야 (0) | 2021.09.07 |
[백준 알고리즘/Python3] 10250 ACM호텔 (0) | 2021.09.06 |