[코테연습] 나머지가 1이 되는 수 찾기 (12/28 TUE)
오늘 할 일을 조금 일찍 끝내서 코테 하나 더 풀어봤다! 🤓
제목만 보면 되게 쉬울거 같은 "나머지가 1이 되는 수 찾기"..
사실 쉬운거 맞는거 같은데 난 안쉬웠다. 이거 푸는데 또 45분 걸려버림🥲
[오늘의 문제!✏️]
자연수 n을 나눈 나머지가 1이 되도록 하는 가장 작은 자연수 x를 리턴하는 solution 함수를 구현해라!
10 % 3 = 1
12 % 11 = 1
5 % 2 = 1
에서 3, 11, 2를 구해야하는 부분인데..
말로하면 너무 쉬운데 컴퓨터한테 시키기 왜이렇게 어려운걸까! 😊
진짜 40분동안 머리 싸매고 있다가 갑자기 떠올라서 호다닥 푼 내 풀이..
<내가 짠 코드>
로직 : x를 우선 n으로 설정해두고, for문 돌면서 n % x == 1일때를 찾는다!
func solution(_ n: Int) -> Int {
var x = n
for i in 1...x {
if n % i == 1 {
x = i
break
}
}
return x
}
x를 굳이 선언할 필요가 없어보인다.
<비슷한 풀이 1>
func solution(_ n: Int) -> Int {
for i in 1..<n {
if n % i == 1 { return i }
}
return 0
}
<비슷한 풀이 2>
func solution(_ n: Int) -> Int {
for i in 1..<n {
if n % i == 1 { return i }
}
return n-1
}
<다른 풀이>
로직 : 1을 변수 answer에 저장해두고, n % answer가 1이 아닐 경우, answer를 1씩 증가시키면서 n % answer가 1일 때 answer를 리턴한다.
func solution(_ n: Int) -> Int {
var answer = 1
while n % answer != 1 {
answer += 1
}
return answer
}
Author And Source
이 문제에 관하여([코테연습] 나머지가 1이 되는 수 찾기 (12/28 TUE)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@marisol/코테연습-나머지가-1이-되는-수-찾기-1228-TUE저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)