[백준] 1978 소수 찾기

cheeeese·2021년 12월 24일
0

코딩테스트 연습

목록 보기
8/151

📖 문제

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

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

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

예제 입력 1

4
1 3 5 7

예제 출력 1

3

💻 내 코드

x=int(input())

num=map(int, input().split())
s=0

for n in num:
  nots=0
  if n>1:
    for i in range(2, n):
      if n%i==0:
        nots+=1
    if nots==0:
      s+=1

print(s)

➕ 추가

  • 입력한 수가 1보다 클 때
  • 2부터 n-1까지의 수로 나눠봄(소수 1, 자기자신으로만 나눠지니깐)
  • 나눈 나머지가 0일때 nots를 1씩 늘림
  • 만약 nots가 0이라면 1과 자기자신 제외하고 나눌 수 있는 수가 없는 것이므로 s늘림
  • s는 소수의 수

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

0개의 댓글