Algorithms

Counting Valley

seoca 2019. 8. 31. 13:04

 

 

문제 난위도보다 영어해석과 문제 이해가 더 문제였던 문제;; 

 

 

 

Solution I in Java

    static int countingValleys(int n, String s) {
        int level = 0;
        int valley = 0;
        for(int i=0; i < n; i++){
            if(s.charAt(i) == 'U'){
                level++;
            }else{
                level--;
            }

//중요한 파트!!
            //Valley가 되는 기준은 마지막U로 sea level까지 올라와야 완성되니까
            if(s.charAt(i) == 'U'&&level == 0){
                valley++;
            }
        }
        return valley;
    }
 
 
 

 

 

 

Solution II in JavaScript

function countingValleys(n, s) {
    let level = 0;
    let v = 0;

    for(let i = 0; i < n; ++i){
        if(s.charAt(i) === 'U'){
            ++level;
        }else{
            --level;
        }

        if(s.charAt(i) === 'U' && level === 0){
            ++v;
        }
    }
    return v;

}

 

 

 

 

 

Reference

https://www.hackerrank.com/challenges/counting-valleys/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=warmup