본문 바로가기
Algorithm

[프로그래머스] 나머지가 1이 되는 수 찾기

by giop15 2021. 12. 28.
반응형

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

 

result

n result
10 3
12 11

입출력 예 설명

입출력 예 #1

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

입출력 예 #2

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

문제풀이

1. 결과 반환 값(answer)을 선언한다.

2. 반복문을 통해 조건에 맞는 값을 찾는다. 찾으면 결과 반환 값(answer)에 저장하고 반복문을 빠져나온다.

3. 결과 반환 값(answer)을 반환한다.

import Foundation

func solution(_ n: Int) -> Int {
    var answer = 1

    while true {
        if n % answer == 1 {
            break
        }
        answer += 1
    }

    return answer
}
반응형