Post

나머지가 1이 되는 수 찾기

https://school.programmers.co.kr/learn/courses/30/lessons/87389

📔 문제 설명

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

💡 입출력 예

nresult
103
1211

💻내가 작성한 코드

  • n을 x로 나눴을 때 나머지가 1이 되도록 하는 조건문
  • 1이 아닐 경우 계속 반복해서 계산할 수 있도록 반복문 작성하기
  • ※ 나머지가 1일 경우 break를 해서 반복문을 멈춰야함
1
2
3
4
5
6
7
8
9
10
function solution(n) {
  var answer = 0;
  for (let i = 0; i <= n; i++) {
    if (n % i === 1) {
      answer = i;
      break;
    }
  }
  return answer;
}
  • break 사용하지 않고 바로 리턴시키기
1
2
3
4
5
function solution(n) {
  for (let i = 0; i <= n; i++) {
    if (n % i === 1) return i;
  }
}

💻다른 사람 코드

n % x === 1을 만드는 x값을 구해서 반환

1
2
3
4
5
6
7
function solution(n, x = 1) {
  while (x++) {
    if (n % x === 1) {
      return x;
    }
  }
}
This post is licensed under CC BY 4.0 by the author.