studyplan

콜라츠 추측 / level 1 / java / 코딩테스트 , 코테 , 적성검사 /프로그래머스 / programers 본문

프로그래머스

콜라츠 추측 / level 1 / java / 코딩테스트 , 코테 , 적성검사 /프로그래머스 / programers

무한머니 2022. 5. 27. 16:42

입출력 예 #1
문제의 설명과 같습니다.

입출력 예 #2
16 -> 8 -> 4 -> 2 -> 1 이되어 총 4번만에 1이 됩니다.

입출력 예 #3
626331은 500번을 시도해도 1이 되지 못하므로 -1을 리턴해야합니다.

 

package programers;

public class 콜라츠_추측 {

    public static int solution(int num) {


        long n = num ;
        int count = 0;
        while (n > 1){
            if (n % 2 == 0){
                n /= 2;
                count++;

            }
            else if ((n % 2) == 1){
                n *= 3;
                n ++;
                count++;

            }
            if (count > 500 ){
                count = -1;
                break;
            }
//            System.out.printf("count : %d  , n : %d\n" , count , n);


        }
        return count ;

    }


    public static void main(String[] args) {

        System.out.println(solution(626331));// -1


    }
}
Comments