문제 설명
자연수 n이 매개변수로 주어집니다. n을 x로 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 return 하도록 solution 함수를 완성해주세요. 답이 항상 존재함은 증명될 수 있습니다.
제한 조건
3 ≤ n ≤ 1,000,000
1차 코드
import Foundation
func solution(_ n:Int) -> Int {
for x in 1...n {
if n % x == 1 {
return x
}
}
return 0
}
1차 결과
추가 의견
- 제한 조건의 최소 숫자가 3부터인데 굳이 1부터 돌려야했을까싶은 점
- 주어진 숫자 n에게서 나머지가 1이 되는 경우는 어쨌든 n - 1만큼만 돌리면 되는데 왜 n까지로 써놨는가?
- 한 줄에 정리되는 건 그냥 같은 줄에 적어도 된다고 배웠다.
최종 코드
import Foundation
func solution(_ n:Int) -> Int {
for x in 2..<n {
if n % x == 1 { return x }
}
return 0
}
최종 코드 결과
미흡했던 점
최소 숫자 3이라는 걸 에라모르겠다 날려버리고 1부터 돌린 점
'iOS > Programmers' 카테고리의 다른 글
[Swift] lv.1 자연수 뒤집어 배열로 만들기 | Programmers (0) | 2024.02.21 |
---|---|
[Swift] lv.1 자릿수 더하기 | Programmers (0) | 2024.02.21 |
[Swift] lv.1 약수의 합 | Programmers (0) | 2024.02.06 |
[Swift] lv.1 x만큼 간격이 있는 n개의 숫자 | Programmers (0) | 2024.02.02 |
[Swift] lv.1 평균 구하기 | Programmers (0) | 2024.02.02 |