개발 공부/알고리즘 문제풀이

[백준] 1978. 소수 찾기

5묘 2022. 7. 31. 22:40
 

1978번: 소수 찾기

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

www.acmicpc.net


flag를 사용해서 주어진 숫자들이 소수인지 여부를 확인하면 되는 문제였다.
테스트케이스가 많지 않아서 그냥 2부터 a까지 모든 숫자들로 다 나눠보아도 시간이 그렇게 많이 들지 않았다.
(하지만 뒤로 갈수록 테스트 케이스가 많아져서 이 방법대로 풀 수는 없었다. 그래서 제곱근이나 에라토스테네스의 체를 찾아보고 적용해야만 했다.)

# 1978 소수 찾기
N = int(input())
arr = list(map(int, input().split()))
cnt = 0

for a in arr:
    flag = False
    if a == 1:
        continue
    for i in range(2, a):
        if a % i == 0:
            flag = True
            break
    if flag is True:
        continue
    else:
        cnt += 1

print(cnt)