사용 언어 - Python3
문제 - 1979번 소수 찾기
1978번: 소수 찾기
첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.
www.acmicpc.net
정답
최적화 - 정수론(수학) (정답 맞춘 여부 O)
int(num**0.5) + 1
약수 구할 때, 모든 값으로 나누지 말고, 루트한 값까지만 나눠주기
n = int(input())
nums = map(int, input().split())
answer = 0
for num in nums:
cnt = 0
if num > 1:
for i in range(2,int(num**0.5)+1):
if num % i == 0:
cnt += 1 # 소수 아닌 경우
if cnt == 0:
answer += 1
print(answer)
레퍼런스
- 정답 깃허브
'Algorithm > 최적화' 카테고리의 다른 글
[백준] 2436번 공약수 (0) | 2023.10.23 |
---|---|
[백준] 1407번 2로 몇 번 나누어질까 (1) | 2023.09.22 |
[백준] 14232번 보석 도둑 (0) | 2023.09.22 |
[백준] 11653번 소인수분해 (0) | 2023.09.21 |
[백준] 15736번 청기 백기 (0) | 2023.09.21 |
댓글