[백준/Python] 1978번 소수찾기

·2023년 7월 20일

algorithm

목록 보기
17/32

문제

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

입력

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

출력

주어진 수들 중 소수의 개수를 출력한다.


풀이

def checkDemical(n): #n이 소수일 때 True 반환
    if (n==1):
        return False
    
    point=1 #검사값
    for i in range(2,n+1):
        if(n%i==0):
            point=i
            break
    if (point==n):
        return True
    else:
        return False
n=int(input())
count=0
list1=list(map(int,input().split()))
for i in list1:
    if(checkDemical(i)==True):
        count+=1
        
print(count)

소수의 여부를 알려주는 checkDemical 함수를 만들었다.
이 후 입력받은 수를 하나씩 돌며 checkDemicla이 참일 경우 카운트를 올린다.

정답으로는 이 카운트를 출력하면 된다.

profile
풀스택 호소인

1개의 댓글

comment-user-thumbnail
2023년 7월 20일

글이 많은 도움이 되었습니다, 감사합니다.

답글 달기