자연수
n
이 매개변수로 주어집니다.n
을x
로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수x
를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.
n | result |
---|---|
10 | 3 |
12 | 11 |
function solution(n) {
let x = 1;
while ( n%x !== 1) {
x++;
}
return x;
}
x를 구할때까지 1부터 하나씩 추가해야하기 때문에 while문을 사용했다. 어려운 문제는 아니었는데 while문을 바로 떠올리지 못했다. while문이 아니라 for문을 사용해 1부터 n까지 돌려도 답은 나올것이다.
const solution = function(n) {
for (let i=0; i<n; i++){
if (n%i == 1){
return i
}
}
}
가장 이해하기 쉬운 코드이다. 다만 while문이 더 간결하고 직관적인 느낌이라 while문을 사용했다.