BOJ 1978. 소수 찾기 (Python)
2021. 2. 15. 11:51ㆍProblem Solving/BOJ
BOJ 1978. 소수 찾기
https://www.acmicpc.net/problem/1978
풀이
입력 받은 수들을 모두 한번씩 소수인지 검사 하면 된다.
is_prime()
함수는 간단하다.
def is_prime(n) -> bool:
if n == 1:
return False
i = 2
while i < n:
if n % i == 0:
return False
else:
i += 1
return True
- 1은 소수가 아니므로 False 리턴
- 무언가로 나눠지면 소수가 아니므로 False 리턴 (자기 자신과는 무조건 나누어 떨어진다! 그러므로 루프를 자기 자신보다 작을때까지 돌린다.)
소스코드
import sys
def is_prime(n) -> bool:
if n == 1:
return False
i = 2
while i < n:
if n % i == 0:
return False
else:
i += 1
return True
N = int(input())
nums = map(int, sys.stdin.readline().split())
count = 0
for n in nums:
if is_prime(n) == True:
count += 1
print(count)
반응형
'Problem Solving > BOJ' 카테고리의 다른 글
BOJ 10816. 숫자 카드 2 (Python) (0) | 2021.02.16 |
---|---|
BOJ 9012. 괄호 (Python) (0) | 2021.02.16 |
BOJ 1920. 수 찾기 (Python) (0) | 2021.02.15 |
BOJ 11650. 좌표 정렬하기 (Python) (0) | 2021.02.15 |
BOJ 10814. 나이순 정렬 (Python) (0) | 2021.02.10 |