나머지가 1이 되는 수 찾기
https://school.programmers.co.kr/learn/courses/30/lessons/87389
📔 문제 설명
자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.
💡 입출력 예
n | result |
---|---|
10 | 3 |
12 | 11 |
💻내가 작성한 코드
- 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.