프로그래머스 Lv1 의 소수찾기에서는 N번째 수 까지의 모든 소수를 에라토스테네스의 체를 이용해서 찾았지만 이 문제는 소수인지 아닌지만 판별하는 문제로, 배열에 1이 아닌 다른 값이 들어가면 곧장 반복문을 멈추는 식으로 접근하였다. 이 때, 반복문은 루트 값까지만 반복한다.
import sys
input = sys.stdin.readline
n = int(input())
numbers = list(map(int, input().split()))
sum = 0
for number in numbers :
if(number > 1) :
sosu = []
i=1
while(i <= number**0.5) :
if(number % i == 0) :
sosu.append(i)
if(len(sosu) > 1) :
break
i+=1
if(len(sosu) == 1) :
sum += 1
print(sum)