본문 바로가기
알고리즘 문제 풀이/프로그래머스

프로그래머스 나머지가 1이 되는 수 찾기 Kotlin (구현)

by 옹구스투스 2022. 5. 2.
반응형

문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/87389

 

코딩테스트 연습 - 나머지가 1이 되는 수 찾기

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

programmers.co.kr

문제 설명

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


제한사항
  • 3 ≤ n ≤ 1,000,000

입출력 예 설명

입출력 예 #1

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

입출력 예 #2

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

풀이

...

월코챌에 이런 문제가 나왔었나?

왜 기억이 안 나지

딱히 설명할 게 없는 문제다.

x의 최댓값은 n-1이고, 포문 안에서 n-1 이전에 나머지가 1이 되는 경우가 있다면 바로 리턴하면 된다.

포문 밖에 리턴문을 쓰지 않으면 에러가 뜨니 n-2 범위까지만 돌리고 밖에선 return n-1을 해주자.  

 

코드

class Solution {
    fun solution(n: Int): Int {
        for(x in 2 until n-1){
            if(n%x==1) return x
        }
        return n-1
    }
}
반응형

댓글