[프로그래머스, Java] 소수 찾기

2025. 7. 18. 16:29·CodingTest/Programmers

사진을 클릭하면 해당 문제로 이동

💡풀이

import java.util.stream.IntStream;

class Solution {
    public int solution(int n) {
        return (int) IntStream.rangeClosed(2, n)
                .filter(this::isPrimeNumber)
                .count();
    }

    boolean isPrimeNumber(int n) {
        for (int i = 2; i <= Math.sqrt(n); i++) {
            if (n % i == 0) return false;
        }
        return true;
    }
}

💡풀이 2


📖새로 배운 부분

- 어떤 수의 약수들은 항상 쌍을 이루기 때문에
분기점이 되는 해당 수의 제곱근까지만 약수를 구하고 한쌍의 약수를 함께 count 해주면 된다.

 

💡해당 내용을 정리한 글

 

[Java] 약수의 개수를 구하는 효율적인 알고리즘 정리

약수 구하기 알고리즘코딩테스트나 알고리즘 문제를 풀다 보면 약수를 구하는 문제를 자주 만나게 됩니다하지만 큰 수의 경우 비효율적인 로직으로 인해 시간 초과에 부딪히는 경우가 다반사

devoks.tistory.com


 

GitHub - okjunghyeon/Programmers_CodingTest: 프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다.

프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다. Contribute to okjunghyeon/Programmers_CodingTest development by creating an account on GitHub.

github.com

'CodingTest > Programmers' 카테고리의 다른 글

[프로그래머스, Java] 옹알이 (2)  (0) 2025.07.18
[프로그래머스, Java] 소수 만들기  (0) 2025.07.18
[프로그래머스, Java] 과일 장수  (0) 2025.07.18
[프로그래머스, Java] 덧칠하기  (0) 2025.07.18
[프로그래머스, Java] 모의고사  (1) 2025.07.17
'CodingTest/Programmers' 카테고리의 다른 글
  • [프로그래머스, Java] 옹알이 (2)
  • [프로그래머스, Java] 소수 만들기
  • [프로그래머스, Java] 과일 장수
  • [프로그래머스, Java] 덧칠하기
devoks
devoks
꾸준히 작성해보자!
  • devoks
    ok's 개발 블로그
    devoks
  • 전체
    오늘
    어제
    • 분류 전체보기 (112) N
      • Backend (15)
        • SpringBoot (0)
        • Java (15)
      • Cs (18) N
      • Infra (0)
        • AWS (0)
        • Docker (0)
      • CodingTest (79)
        • Programmers (79)
  • 링크

    • My GitHub
  • 인기 글

  • 태그

    StringTokenizer
    programmers
    json
    switch
    BufferedReader
    CS
    java
    BufferedWriter
    codingtest
    effectivejava
  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
devoks
[프로그래머스, Java] 소수 찾기
상단으로

티스토리툴바