[프로그래머스]점프와 순간 이동(js)

Kyoungmoon Kim·2022년 11월 17일
0

문제 설명

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

문제 풀이

  1. 거리가 0이 될 때까지 반복한다.
  2. 짝수 일 경우 순간이동만 하면 되기 때문에 2로 계속 나눈다.
  3. 홀수 일 경우 1만큼 점프했을 때 건전지를 1 소모하므로 ans에 1씩더한다.

풀이 코드

function solution(n){
     //건전지 최소 사용량
     let ans = 0;
    //짝수일 경우 순간이동만 무한으로 하면 2로 나눈 거리와 똑같다.
    //홀수일 경우 1을 빼서 짝수로 만든다.
    while(n!==0){//1.
        if(n%2==0){//2.
            n/=2;
        }else{//3.
            n--;
            ans++;
        }
    }
    return ans;
}
profile
프론트 개발 공부를 정리한 블로그입니다.

0개의 댓글