코딩테스트/기초

백준 1978 소수찾기 - Python

math_tbro 2022. 1. 8. 15:28

출처: 

https://www.acmicpc.net/problem/1978

 

1978번: 소수 찾기

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

www.acmicpc.net

n = int(input())
a = list(map(int, input().split()))

prime = 0

for i in a:
    cnt = 0
    if i==1 :
        continue
    for j in range(2,1001):
        if i % j == 0 :
            cnt += 1
    if cnt == 1:
        prime += 1

print(prime)

 

풀이 :

입출력은 늘 하던 대로 받아와준다. 그리고 정답을 출력할 prime = 0 으로 지정해준다.

 

이제 코드를 보면 for 문으로 a에 입력한 모든 것에 대해 테스트 할 것이다. 

 

일단 1이 있다면 패스 한다.

그리고 2부터 1000이하의 수에 대해서 a에 모든 값의 나머지를 찾아본다.

그러면 소수들은 딱 cnt 가 1만 될것이다

 

그럼 이제 그 1에 해당하는 cnt를 prime이라는 답지에 저장하면서 출력해간다.