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

DDUDII·2023년 10월 4일
0

✏️ 문제

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


✏️ 제한사항

  • 3 ≤ n ≤ 1,000,000

✔️ 나의 풀이

function solution(n) {
    for (let x = 2; x <= n; x++) {
        if (n % x === 1) {
            return x;
        }
    }
    return -1; // 찾지 못한 경우 -1을 반환
}

🎯 포인트

  • 주어진 문제에서 "답이 항상 존재함은 증명될 수 있습니다."라는 조건
    ➡️ x를 찾지 못한 경우에는 -1을 반환하여 예외 처리를 수행
  • x가 2부터 시작하는 이유
    ➡️ 만약 x를 1부터 시작한다면, 대부분의 자연수 n에 대해 나머지가 1이 되는 x는 1이 됨으로 2부터 시작함
    (실제로 1부터 시작해도 통과는 된다!)
profile
코딩 공부 너무 많이 해서 두피가 뜨거워 지는중

0개의 댓글