본문 바로가기

항해99_10기/[2주차] 알고리즘 문제풀이

[30번][중급] 나머지가 1이 되는 수 찾기

 
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

나의 답

 * 나머지가 1이 되는 수 찾기
 * n % x === 1이 되게 하는 가장 작은 자연수 x의 값을 리턴
 * 로직 : (n-1) % x === 0이라는 의미 이므로, 1을 제외한 (n-1)의 약수 중에 가장 작은 값을 찾으면 됨

[pseudo code]
1. 2 ~ (n-1) 값까지 루프를 돌면서 (n) % i === 1인 값을 맨 처음 찾았을 때, 이를 리턴

 

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

console.log(solution(10));
console.log(solution(12));