코테/프로그래머스

[프로그래머스/Lv. 1] 소수 찾기

imname1am 2023. 3. 2. 01:19
반응형

🔺 문제

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

🔺 코드

class Solution {
    public int solution(int n) {
        int answer = 0;

        for(int i=2 ; i <= n ; i++) {
            boolean flag = true;
            
            for(int j=2 ; j <= Math.sqrt(i) ; j++) {
                // 소수 X인 경우
                if(i % j == 0) {
                    flag  = false;
                    break;
                }
            }
            
            // 소수인 경우
            if(flag == true) {
                answer++;
            }
        }
  
        return answer;
    }
}

어려운 문제가 아닌데... 빨리 해결하지 못 해 아수워,,,😭🤦‍♀️

 

두 번째 반복문 i % j == 0 까지는 생각했는데,

그 이후에 안에서 어떻게 처리해야 할 지 모르겠어서 다른 분 코드를 보았다..

 

boolean을 사용하셨다!

 

 

프로그래머스 - 소수찾기 [java]

1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요.

velog.io

헉 6점은 짱인데..?!


(참고)

소수 구하기 알고리즘에 에라토스테네스의 체... 라는 게 있다고.. ㄴㅇㄱ

 

[알고리즘] 소수(Prime Number) 구하기 - 에라토스테네스의 체 (Java)

소수 소수(prime number)는 정수론의 가장 중요한 연구 대상 중 하나로, 양의 약수가(1보다 큰 자연수) 1과 자기 자신만을 약수로 가지는 수를 의미한다. 소수의 반대말로, 세 개 이상의 양의 약수를

loosie.tistory.com

반응형