1978번: 소수 찾기
문제 )
주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.
입력 :
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
출력 :
주어진 수들 중 소수의 개수를 출력한다.
풀이)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
import sys
def prime(a): #소수 판별기
if a == 1: #1은 소수가 아니다
return 0
else:
for i in range(2, a): #1과 자신을 제외한 수를 돌며
if a % i == 0: #나머지가 0이면 소수가 아니므로
return 0
return 1
n = int(sys.stdin.readline())
a = list(map(int, sys.stdin.readline().split(" ")))
cnt = 0
for i in a:
cnt += prime(i) #소수임이 판별되면 숫자세기
print(cnt)
|
cs |
출처 : https://www.acmicpc.net/problem/1978
1978번: 소수 찾기
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
www.acmicpc.net
'Develop > 백준 (python)' 카테고리의 다른 글
[백준] 10829번: 이진수 변환 (python) (0) | 2022.01.23 |
---|---|
[백준] 2108번: 통계학 (python) (0) | 2022.01.23 |
[백준] 11651번: 좌표 정렬하기 2 (python) (0) | 2022.01.22 |
[백준] 11650번: 좌표 정렬하기 (python) (0) | 2022.01.22 |
[백준] 10989번: 수 정렬하기 3 (python) (0) | 2022.01.22 |