점프와 순간이동

공부한것 다 기록해·2023년 8월 4일
0

https://school.programmers.co.kr/learn/courses/30/lessons/12980

문제풀이 흐름
(1) 짝수인 경우는 2로 나눠!
(2) 홀수인 경우는 1을 빼고 정답 변수에 1을 더해!
(3) 주어진 숫자 n이 1이될때까지 계속해!
(4) 최종적으로 0 -> 1이되는 경우가 존재하므로 1을 더해

import java.util.*;

public class Solution {
    public int solution(int n) {
        int ans = 1;

        while(n != 1){
            if(n%2 == 1){
                n-=1;
                ans++;
            }else{
                n/=2;
            }
        }

        return ans;
    }
}

0개의 댓글