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

📄 문제

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

  • 3 ≤ n ≤ 1,000,000

🙋‍♀️ 나의 풀이

function solution(n) {
  for (let i = 0; i < n; i++) {
    if (n % i === 1) return i;
  }
}

for문으로 반복문을 돌려 나머지가 1이 되면 바로 값을 반환했습니다.

👍 Best Practice

function solution(n, x = 1) {
  while (x++) {
    if (n % x === 1) {
      return x;
    }
  }
}

증감연산자를 for문뿐만 아니라 while문에서 사용해 반복문을 돌릴 수 있다는 걸 배워갑니다.

문제 출처

Leave a comment