프로그래머스 - 예상 대진표

문제 : 예상 대진표

기본적인 내용

두 위치에서 계속 올라갈때 서로 만날때까지 대진한 횟수 구하기

다른사람코드

구하려고 별 짓 해봤지만 알고보니 혼자 헛짓 했었다.
해당 값이 2로 계속 나누었을때 내림한 값이 서로 같을때가 대진을 만났을때이다.

function solution(n,a,b)
{
    let answer = 0;
    while(a !== b) {
        a = Math.ceil(a/2);
        b = Math.ceil(b/2);
        answer++;
    }

    return answer;
}

즉 서로 같아질때까지 서로 계속 2로 나누다가 answer를 증가시키고 같아지는 순간에 while문이 종료되고 answer를 리턴한다.

좋은 웹페이지 즐겨찾기