[1978] 백준 문제풀이 - 소수 찾기
https://www.acmicpc.net/problem/1978
문제
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
입력
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
출력
주어진 수들 중 소수의 개수를 출력한다.
풀이
isPrimeNumber
라는 함수에서 소수를 판별해주고, 리스트 arr
의 원소 i
가 isPrimeNumber(i) == True
일 때 resume
의 결과값에 1을 추가해주고 그 resume
을 출력해주면 정답처리.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
N = int(input())
arr = list(map(int, input().split(" ")))
resume = 0
def isPrimeNumber(x):
for i in range(2, x):
if x % i == 0:
return False # 소수 아님
return True
for i in arr:
if i == 1:
continue
if isPrimeNumber(i) == True:
resume += 1
print(resume)
댓글남기기