본문 바로가기

JAVA 기본/코딩테스트 문제

프로그래머스-나머지가 1이 되는 수 찾기

문제 : 숫자가 들어왔을 떄, 나머지가 1이 되는 가장 작은 자연수를 구하시오

해결법 : for loop, 짝수

key : 나머지가 1이 되는 수 라는 말은, 결국 들어온 숫자 n 의 n-1 이 나누어 떨어지는 수를 찾으면 된다 그 외의 홀수에서 찾으면 되므로 2씩 증가한다


class Solution {
    public int solution(int n) {
        int answer = n-1;
        if(answer % 2 == 0 ) return 2;
        for(int p = 3 ; p < answer ; p += 2){
       if(answer % p == 0) {
               return p;
           }
        }
        return answer;
    }
}