본문 바로가기
Algorithm/최적화

[백준] 1979번 소수 찾기

by HANNI하니 2023. 9. 21.

사용 언어 - 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)

 

 

레퍼런스

  • 정답 깃허브

https://github.com/yyeongeun/codingtest/blob/main/BAEKJOON/1978_%EC%86%8C%EC%88%98%EC%B0%BE%EA%B8%B0.py

 

'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

댓글