본문 바로가기

코딩 테스트

[프로그래머스] (Lv.1) 나머지가 1이 되는 수 찾기

728x90

문제


자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.

 

 

-  출력 예시  -

정답 코드


<  내 정답 코드  >

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

이것을 주의하자!


-  어렵지 않은 코드다. 해당 값을 차례대로 나누어 가장 먼저 나머지가 1 이 되는 i 의 값을 반환하면 된다. 

 

-  여기서 한 가지 함정이 있다면, 처음 i 의 값이 2 이어야 한다는 점이다. n 이 3 부터 시작한다고 해도 i 의 값은 3이 아니라 2 부터 시작해야 한다.