Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- RN 프로젝트
- [파이썬 실습] 기초 문제
- 자바스크립트 reduce()
- 자바스크립트
- 엘리스
- 리트코드
- [파이썬 실습] 중급 문제
- 자바스크립트 날씨
- 프론트개발
- leetcode
- 날씨 웹 만들기
- 프론트개발공부
- 개발공부
- 개발일기
- [파이썬 실습] 심화 문제
- 엘리스 ai 트랙
- 엘리스 AI 트랙 5기
- 간단한 날씨 웹 만들기
- 프로그래머스
- 삼항연산자
- 부트캠프
- 자바스크립트 날씨 웹 만들기
- 코드스테이츠
- HTML
- 자바스크립트 split()
- 코딩부트캠프
- JavaScript
- reactnativecli
- 자바스크립트 sort()
- [AI 5기] 연습 문제집
Archives
- Today
- Total
개발조각
[프로그래머스] 점프와 순간 이동 본문
728x90
반응형
이번 문제는 문제 설명 길이에 비해 너무너무 쉬운 문제라서 바로 풀었습니다.
접근방법
n=5
처음 위치 0 에서 1 칸을 앞으로 점프한 다음 순간이동하면 (현재까지 온 거리 : 1) x 2에 해당하는 위치로 이동할 수 있으므로 위치 2로 이동됩니다. 이때 다시 순간이동하면 (현재까지 온 거리 : 2) x 2 만큼 이동할 수 있으므로 위치 4로 이동합니다. 이때 1 칸을 앞으로 점프하면 도착하므로 건전지 사용량이 2 만큼 듭니다.
- 0->1 점프 : 건전지 사용량 1
- 1->2 (현재까지 온 거리 : 1) x 2 순간이동
- 2->4 (현재까지 온 거리 : 2) x 2 순간이동
- 4->5 점프 : 건전지 사용량 2
n=6
처음 위치 0 에서 1 칸을 앞으로 점프한 다음 순간이동하면 (현재까지 온 거리 : 1) x 2에 해당하는 위치로 이동할 수 있으므로 위치 2로 이동합니다. 이때 1 칸을 앞으로 점프하면 위치 3으로 이동합니다. 이때 다시 순간이동하면 (현재까지 온 거리 : 3) x 2 이동할 수 있으므로 위치 6에 도착합니다. 이 경우가 건전지 사용량이 가장 적으므로 2를 반환해주면 됩니다.
- 0->1 점프 : 건전지 사용량 1
- 1->2 (현재까지 온 거리 : 1) x 2 순간이동
- 2->3 점프 : 건전지 사용량 2
- 3->6 (현재까지 온 거리 : 3) x 2 순간이동
n=5, n=6일때 푸는 과정을 보면서 n이 짝수이면 *2, 홀수이면 +1을 해주는 규칙성을 발견했고,
이 점을 활용해서 반대로 n이 짝수이면 /2, 홀수이면 -1을 해주었습니다.
n=5000
- 5000/2 = 2500
- 2500/2 = 1250
- 1250/2 = 625
- 625-1 = 624
- 624/2 = 312
- 312/2 = 156
- 156/2 = 78
- 78/2 = 39
- 39-1 = 38
- 38/2 = 19
- 19-1 = 18
- 18/2 = 9
- 9-1 = 8
- 8/2 = 4
- 4/2 = 2
- 2/2 = 1
- 1-1 = 0
건전지 사용량 : 5
해결방안
function solution(n)
{
var ans = 0;
while(n!==0){
if(n%2 === 1){
n--;
ans++;
}else n/=2;
}
return ans;
}
while문을 이용해서 n이 0이 될 때까지 반복해주었습니다.
n%2가 1이 나오면 n-1을 해주고 ans+1을 해주었고
n%2가 0이 나오면 n/2을 해주었습니다.
여기까지 프로그래머스 점프와 순간 이동 해결방안에 대해 설명해보았습니다.
728x90
반응형
'알고리즘🅰 > 프로그래머스' 카테고리의 다른 글
[프로그래머스] 소수 찾기 (0) | 2022.05.06 |
---|---|
[프로그래머스] 방문 길이 (0) | 2022.05.04 |
[프로그래머스] 문자열 압축 (0) | 2022.05.02 |
[프로그래머스] 스킬트리 (0) | 2022.05.02 |
[프로그래머스] [3차] 압축 (0) | 2022.04.29 |
Comments