-
[BOJ] 1978번Algorithm/Baekjoon Online Judge 2022. 3. 12. 13:27728x90
https://www.acmicpc.net/problem/1978
Python3
if __name__ == '__main__': N = int(input()) cnt = 0 number = list(map(int, input().split())) for n in number: is_sosu = 1 if n == 1: continue for i in range(2, n): if n % i == 0: is_sosu = 0 break if is_sosu: cnt += 1 print(cnt)
입력받을 수의 개수를 N에 저장하고 number라는 리스트에 수들을 저장했다. cnt는 소수의 개수를 셀 카운트 변수이다.
number안의 수들을 하나하나 보면서 소수인지 판별하는데 is_sosu라는 변수를 통해 소수면 1, 아니면 0으로 지정했다.
우선 수가 1일 경우 소수가 아니기때문에 이 경우에 대한 예외처리를 해주었다. 이후에 2부터 n-1까지 수들로 n을 나누어보면서 나머지가 0인경우 n은 소수가 아니기 때문에 is_sosu를 0으로 저장하고 반복문을 종료했다.
마지막에 is_sosu가 true라면 카운트 변수를 1 증가시켰다. 이후에 모든 리스트를 돌면서 판별이 끝나면 cnt변수를 출력했다.
728x90'Algorithm > Baekjoon Online Judge' 카테고리의 다른 글
[BOJ] 11653번 (0) 2022.03.12 [BOJ] 2581번 (0) 2022.03.12 [BOJ] 10757번 (0) 2022.03.12 [BOJ] 2775번 (0) 2022.03.12 [BOJ] 10250번 (0) 2022.03.12