본문 바로가기

코딩테스트

프로그래머스 '콜라츠 추측' 코테 풀이

반응형

프로그래머스에서

레벨1, 코틀린 언어, 정답률 높은 순으로

'콜라츠 추측'이라는 문제 코테 풀이를 포스팅합니다.

사이트 : https://school.programmers.co.kr/learn/challenges?order=acceptance_desc&levels=1&languages=kotlin

 

코딩테스트 연습 | 프로그래머스 스쿨

개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요!

school.programmers.co.kr

사이트에 들어가셔서

정답률 높은 순으로

아래쪽으로 내리면

콜라츠 추측이라는 문제를 누르면

문제를 이해하실 수 있을거 같습니다.

제 풀이는 이렇습니다.

class Solution {
    fun solution(num: Int): Int {
        var answer = 0
        var value = num.toLong()
        if(num == 1){
            return 0
        }
        while(true){
            if(value.toInt() % 2 == 0){
                value = value / 2
            }else{
                value = value * 3 + 1
            }
            answer++
            if(value.toInt() == 1){
                break
            }else{
                if(answer >= 500){
                    answer = -1
                    break
                }
            }
        }
        return answer
    }
}

처음에는 int형으로 풀다가 답이 잘 안 풀렸는데

Long으로 바꾸니까 풀렸네요.

궁금한 점이 있으시거나.

더 나은 답변이 있으시면 댓글로 달아주세요.

감사합니다.

반응형