시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초128 MB2494621189189504547.375%

문제

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

입력

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

출력

주어진 수들 중 소수의 개수를 출력한다.

풀이

N = int(input())
nums = list(map(int, input().split()))
cnt = 0
 
for n in nums:
    if n == 1: cnt -= 1
    for i in range(2, int(n**(0.5))+1): # math.sqrt 안하고 이거 해도 되네!
        if n % i == 0:
            break
    else:
        cnt += 1
 
print(cnt)

math.sqrt(n)대신 n**(0.5)를 사용해도 됨 #Computer #PS