문제를 풀고 구글에 코드를 검색해보니 for문을 처음부터 끝까지 다 돌아서 나누어 떨어지는 게 있는지 없는지를 확인하고 count를 더하더라. 그렇게 하면 시간이 좀 오래 걸릴 것 같아서 나는 나누어 떨어지자마자 for문을 나가버리고 count를 빼주는 방식으로 풀었다.
그리고 전 문제를 풀면서 소수를 찾을 때 1~N까지 모두 도는 것보다 1~N/2까지 도는 게 낫다는 것을 배웠다. 어차피 N은 자기 자신으로 나누어 떨어질 것이고, 자신을 제외한 가능한 가장 큰 소수는 N/2이기 때문이다.
N = int(input())
count = N
nums = list(map(int, input().split()))
for num in nums:
if num == 1:
count -= 1
for i in range(2, num//2 + 1):
if num % i == 0:
count -= 1
break
print(count)
