2021 SISS 21기 활동/2학기 C
[HackerRank] Counting Valleys
hyerang0125
2021. 11. 21. 20:23
7주차 자유문제
풀이
계곡이 몇 개인지 세는 문제로 U와 D로 입력을 받고 원래 높이보다 낮았다가 다시 올라오면 계곡 하나로 카운트하게 된다. flag 변수를 만들어 U일때 1, D일때 -1이 되도록 코드를 작성하였고, 계곡의 조건인 -1에서 0이 될 때(-1 + 1 = 0) 카운트를 1 증가시킨다. 이렇게 계곡의 수를 모두 세어준 뒤 그 값을 반환한다.
int countingValleys(int steps, string path) {
int flag = 0, answer = 0;
for(int i=0; i<steps; i++){
if(path[i] == 'U'){
flag++;
if(flag == 0) answer++;
}
else {
flag--;
}
}
return answer;
}
결과