사용 언어 - Python3
문제 - 1979번 소수 찾기
정답
최적화 - 정수론(수학) (정답 맞춘 여부 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 |
댓글