반응형
문제 정보는 아래 링크를 확인해주세요!
문제 접근 방법
- N까지의 이동거리이므로 N에서 거꾸로 0이 될 때까지 비교해주는 Top-Down 방식으로 접근했다.
- N이 2로 나눠지면 나눠진 값을 N에 다시 셋팅하고,
- N이 2로 나눠지지 않는다면, 결과값+1을 하면서
- N이 0이 될 때까지 분기문을 돌리는 방법이다.
[소스 코드]
package algorithm.programmers;
import java.util.*;
/*
* 2018 summer/winter conding
* 점프와 순간 이동
* */
public class Pro12980 {
public static int solution(int n) {
int answer = 0;
while(n != 0) {
if (n%2 == 0) {//n이 2로 나눠 떨어지면 현재 n을 2로 나눔
n/=2;
} else {//나눠 떨어지지 않으면, 한칸 이동
n-=1;
answer++;
}
}
return answer;
}
}
반응형
LIST
'알고리즘 > 연습문제' 카테고리의 다른 글
2018 카카오 블라인드 코딩테스트 - [1차] 추석 트래픽 (feat. Java) (0) | 2020.05.13 |
---|---|
프로그래머스 - 영어 끝말잇기(feat. Java) (0) | 2020.05.11 |
프로그래머스 - 숫자 게임(feat. Java) (0) | 2020.05.11 |
프로그래머스 - 기지국 설치 (feat. Java) (0) | 2020.05.11 |
프로그래머스 - 스티커 모으기(2) (feat. Java) (0) | 2020.05.11 |