소수는 1과 자기 자신밖에 없는 수이다.
이를 이용하면 2가지 방법으로 풀 수 있는데,
1. 소수^2 < 1000인 소수를 이용 (에라토스테네스의 체)
2. 약분
1번 방법
n = int(input())
num = map(int, input().split())
prime_list = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31]
count = 0
for find_num in num:
if find_num != 1:
if find_num in prime_list:
count += 1
else:
for p in prime_list:
if find_num % p == 0:
break
elif prime_list[-1] == p:
count += 1
print(count)
2번 방법
sojeong-lululala.tistory.com/11
[BOJ] [Python] 2581번 : 소수
1978번 소수 찾기와는 조금 다른 방법으로 풀었다. 2부터 N-1까지 나누어서, 0으로 떨어진다면 소수가 아니라고 판정하는 식이다. start = int(input()) end = int(input()) result = [] for num in range(start,..
sojeong-lululala.tistory.com
'알고리즘 > 백준' 카테고리의 다른 글
[BOJ] [Python] 2581번 : 소인수분해 (0) | 2021.05.06 |
---|---|
[BOJ] [Python] 2581번 : 소수 (0) | 2021.05.06 |
[BOJ] [Python] 2869번 : 달팽이는 올라가고 싶다 (0) | 2021.05.04 |
[BOJ] [Python] 2292번 : 벌집 (0) | 2021.05.04 |
[BOJ] [Python] 1260번 : DFS와 BFS (0) | 2021.04.12 |