1. 문제 설명
2. 코드
N = int(input())
numbers = map(int,input().split())
count = 0
for num in numbers:
if num > 1:
is_prime = True
for i in range(2, int(num**0.5) + 1):
if num % i == 0:
is_prime = False
break
if is_prime:
count += 1
print(count)
3. 풀이 과정
주어진 수 N을 정수로 입력받는다.
N개의 수를 numbers에 정수로 map()하여 입력받는다.
소수의 개수를 셀 count를 0으로 초기화한다.
numbers에 있는 num을 for문으로 반복해 받는다.
num이 1보다 클 때
is_prime은 True로 초기화한다.
for문으로 2부터 num의 제곱근+1까지 범위의 정수 i를 반복한다.
num이 i로 나누어 떨어지면 is_prime을 False로 초기화하고 break로 for문을 빠져나온다.
is_prime이 True이면 count에 1을 더한다.
모든 num을 확인한 후 count를 출력한다.
'Baekjoon > 단계별로 풀어보기' 카테고리의 다른 글
[백준][9단계 약수,배수와 소수] 11653번 /소인수분해 (파이썬/Python) (0) | 2025.04.11 |
---|---|
[백준][9단계 약수,배수와 소수] 2581번 /소수 (파이썬/Python) (0) | 2025.04.10 |
[백준][9단계 약수,배수와 소수] 9506번 /약수들의 합 (파이썬/Python) (0) | 2025.04.08 |
[백준][9단계 약수,배수와 소수] 2501번 /약수 구하기 (파이썬/Python) (0) | 2025.04.05 |
[백준][9단계 약수,배수와 소수] 5086번 /배수와 약수 (파이썬/Python) (0) | 2025.04.05 |