728x90
문제
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
풀이
소수는 1보다 큰 자연수 중 1과 자기 자신만을 약수로 가지는 수이다. 즉 1이면 소수가 아니고, 2이상의 수부터 N까지 나눴을 때, 나누어 떨어지는 수는 제외하면 된다.
import sys
if __name__ == '__main__':
n = int(input())
a = list(map(int, input().split()))
count = n
for i in a:
if i == 1:
count -= 1
continue
for j in range(2, i):
if i % j == 0:
count -= 1
break
print(count)
이 문제도 갑자기 소수의 정의가 생각이 안나서 다시 찾아보고 풀었다. 근데 어렵진 않다.
'코드연습 > BOJ' 카테고리의 다른 글
BOJ 1165 : 소인수 분해 (0) | 2022.04.13 |
---|---|
BOJ 2581 : 소수 (0) | 2022.04.13 |
BOJ 2839 : 설탕배달 (0) | 2022.04.13 |
BOJ 2775 : 부녀회장이 될테야 (0) | 2022.04.12 |
BOJ 10250 : ACM 호텔 (0) | 2022.04.11 |