본문 바로가기
Algorithm/문제풀이

[HackerRank] Counting Valleys (Easy) by javascript

by 썸머워즈 2022. 4. 21.
반응형

▷ 문제Counting Valleys (Easy)

 

Counting Valleys | HackerRank

Count the valleys encountered during vacation.

www.hackerrank.com

▷ 해결 날짜 : 2022.04.21
▷ 소요 시간 : 20분
▷ 풀이 과정 :
문제는 계곡을 몇 번이나 지상에서 들어갔냐를 구하는 건데,

문제에서는 산과 계곡을 왔다 갔다 한다.

 

계곡을 간 횟수를 카운팅 하는 건 지상에서 내려갈 때만 카운팅을 하는 거라 어떻게 구분 값을 줄지만 고민해주면 된다.

그래서 그냥 산, 땅, 계곡 이렇게 세분류로 나눠서 계속해서 비교해 카운팅 해주었다.


▷ 구현

function countingValleys(steps, path) {
    // state : land, mount, valley
    let [state, height, count] = ['land', 0, 0]
    for(let dir of path){
        height += (dir === 'U') ? 1 : -1;
        if(state === 'land' && height < 0) count++;
        state = (height === 0) ? 'land' : 
                  (height < 0) ? 'valley' : 'mount';
    }
    return count;
}


▷ 복기 :
뭔가 좀 아쉬워서 다른 사람들 꺼 봐도 결국 비슷하게 접근하는 건 맞지만 상태를 어떤 식으로 주는지만 달라서 별 소득은 없었다.

반응형


댓글

TOP