728x90
반응형

이진탐색 3

프로그래머스 - Level 2. 점프와 순간 이동 / JavaScript (js)

문제설명 문제분석 해당 문제는 주어진 거리 N을 0에서부터 순간이동과 점프를 이용하여 이동하며, 건전지 사용량이 최소가 되도록 하는 문제입니다. 순간이동은 현재까지 이동한 거리의 2배 만큼 거리를 이동하므로, 현재 위치를 2로 나누면서 이동하면서 필요한 점프 횟수를 계산하여 건전지 사용량을 구하면 됩니다. 이를 위해 아래와 같이 접근할 수 있습니다. 현재 위치를 나타내는 변수를 0으로 초기화합니다. N이 0이 될 때까지 while 루프를 돌며 다음을 수행합니다. 현재 위치가 짝수일 경우, 순간이동을 이용하여 이동합니다. 이때 건전지 사용량은 변하지 않습니다. 현재 위치가 홀수일 경우, 점프를 이용하여 한 칸 이동합니다. 이때 건전지 사용량은 1 증가합니다. 현재 위치를 2로 나눕니다. 현재까지의 건전지 ..

[Algorithm] 이진탐색 - Binary Search

이진탐색은 [Hello Coding] 그림으로 개념을 이해하는 알고리즘의 가장 첫번째로 소개되는 알고리즘이다. 간단하게는 Up&Down 게임을 생각하면 쉽다. Up & Down 게임을 해보려면 여기를 통해 해보자. 이진탐색 이진탐색을 하기에 앞서, 단순탐색에 대해 생각해보자. 내가 0부터 100 사이의 숫자 중 하나를 선택했을 때 단순하게 내가 생각한 숫자를 맞히기 위해서는 0부터 시작해서 100까지 1씩 증가하면 된다. const myNumber = 88; for ( let i = 0; i < 100; i++ ) { if ( i === 88 ) { console.log("Find the number you thought! It's ${i} !"); } } 위의 코드처럼 0부터 1씩 증가하며 내가 생각한..

Algorithm 2020.09.06
728x90
반응형