백준 문제풀이
[백준 1978번 문제] 소수 찾기
eunda_coding
2022. 7. 29. 16:53
이번 문제는 입력한 숫자에서 소수가 몇개인지를 출력하는 문제이다.
먼저 이 문제를 풀기위해서 어떤 자연수가 소수인지 아닌지를 판별하는 조건이 있다.
<소수의 조건>
1. 1보다 큰 수
2. n보다 작은 어떠한 수로 나누었을 때 나머지가 0이되면 합성수가 된다.
import sys
input = sys.stdin.readline
n = int(input())
num_list = list(map(int,input().split()))
prime = 0
# print(num_list)
for i in num_list:
error = 0
if i > 1:
for j in range(2, i+1):
if i % j == 0:
error += 1
# print("error" , error)
if error == 1:
prime += 1
print(prime)
먼저 입력받을 수의 갯수를 입력받아서 리스트 형태로 num_list에 저장한다.
그리고 소수의 갯수를 셀 prime 변수를 선언하고 for문을 통해서 리스트 안에 숫자가 1보다 크고 해당 숫자보다 작은 수들로 나눈 나머지가 0이 될 경우를 error 변수에 카운트한다.
만약 error가 1이면 소수 갯수도 같이 카운트해준다.