Algorithm/Programmers

Programmers / Level 1 / 나머지가 1이 되는 수 찾기

Gyuri 2022. 6. 22. 23:29

[문제설명]

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

[제한사항]

  • 3 ≤ n ≤ 1,000,000

[입출력 예]

n result
10 3
12 11

 

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

 

가장 작은 수를 구해야하기 때문에 나머지가 1이 되도록 하는 수가 있으면

break문을 걸어 for문을 빠져나오도록 구현했다. (for문을 더 돌면 나머지가 1이 되는 가장 큰 수가 저장되기 때문)