점프와 순간 이동

2020.08.01

const isEven = (num) => !(num % 2);

const solution = (n, result = 0) => {
  if (n == 1) {
    return result + 1;
  }
  if (isEven(n)) {
    return solution(n / 2, result);
  }
  return solution((n - 1) / 2, ++result);
};
  • 거리가 짝수면 순간이동, 홀수면 한 칸 점프하고 순간이동 이렇게 역순으로 생각하면 된다.

0개의 댓글