알고리즘/Programmers
[Swift_Programmes] 콜라츠 추측 🌟
YEN_
2023. 11. 22. 10:59
프로그래머스 문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/12943
풀이
func solution(_ num:Int) -> Int {
guard num != 1 else { return 0 }
var value: Int = num
var count: Int = 0
while value != 1 && count <= 500 {
value % 2 == 0 ? (value = value / 2) : (value = value * 3 + 1)
count += 1
}
return value == 1 ? count : -1
}
문제
중요 개념
- 조건이 많기 때문에 분기를 잘 쳐주는게 중요하다고 생각했다
- 조건에 유의한다면 단순하게 반복문을 사용하여 풀 수 있었다