코딩테스트/프로그래머스

[Lv.1] 나머지가 1이 되는 수 찾기

민톨이 2024. 8. 4. 02:33
728x90

📋 문제

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

 

📋 입출력 예시

 

📋 풀이

class Solution {
    public int solution(int n) {
        // x를 2부터 시작하여 n % x == 1을 만족하는 x를 찾음
        for (int x = 2; x < n; x++) {
            if (n % x == 1) {
                return x;
            }
        }
        // 문제가 보장되므로 이 부분은 실행되지 않음
        return -1;
    }}

 

  1. for 루프:
    • x를 2부터 시작하여 n-1까지의 모든 값을 검사 (1로 나누는 것은 의미가 없기 때문에 2부터 시작)
    • n % x == 1 조건을 만족하는 가장 작은 x를 찾으면 해당 값을 반환
  2. 반환 값:
    • 조건을 만족하는 x를 찾으면 그 값을 반환
    • 루프를 다 돌고도 찾지 못하면 기본적으로 -1을 반환

'코딩테스트 > 프로그래머스' 카테고리의 다른 글

[Lv.1] 콜라츠 추측  (0) 2024.08.06
[Lv.1] 핸드폰 번호 가리기  (0) 2024.08.04
[Lv.1] 서울에서 김서방 찾기  (0) 2024.08.04
[Lv.1] 직사각형 별찍기  (0) 2024.08.03
[Lv.1] 평균 구하기  (0) 2024.08.03