[프로그래머스 : 알고리즘 코딩테스트] Level.1 나머지가 1이 되는 수 찾기

AREUM·2023년 1월 22일
0

코딩테스트

목록 보기
17/22
post-thumbnail

문제 설명

매개변수 : 자연 수 n

nx로 나눈 나머지가 1이 되도록하는 가장 작은 자연수 xreturn해라.

제한사항

  • 3 ≤ n ≤ 1,000,000

입출력 예 or 설명

  • 10을 3으로 나눈 나머지가 1이고, 3보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 3을 return 한다.
  • 12를 11로 나눈 나머지가 1이고, 11보다 작은 자연수 중에서 문제의 조건을 만족하는 수가 없으므로, 11을 return 한다.

문제 풀이 or 설명

function solution(n) {
    var answer = 0;
    for(let i = 0; i < n; i++) {
        if(n % i === 1) {   // 10(n)을 0 ~ 9 (i)로 나누었을 때, 나머지가 1이 나오는 수
            console.log(i)  // 3과 9가 나온다.
            answer = i;	// i를 answer에 할당시켜준다.
            break;  // 3을 출력하고, break로 조건문을 종료시킨다.
        }
    }
    return answer;
}

문제 설명
1. for문을 이용해 n의 수 만큼 반복문을 돌려준다.
2. 첫 번째 n의 매개변수로 예를 들자면 수는 10이니까, 조건문을 사용해 nn의 수만큼 반복문이 돌기에 i는 0 ~ 9 다.
10을 0 ~ 9로 하나씩 나눌 경우 나머지 값이 1일 경우를 출력한다.
3. 나머지가 1이 나오는 자연수 i는 3, 9가 나온다.
4. answerreturn 시켜주기위해 i에 재할당을 해준다.
5. 가장 작은 자연수를 return해주기 위해 break를 걸어준다.
( 그러면 숫자 3만 출력되고 뒤에 나오는 수는 무시해준다. )

profile
어깨빵으로 부딪혀보는 개발끄적이는 양씨 인간

0개의 댓글