풀이
/**
* 제로
* 10773.js
* https://www.acmicpc.net/problem/10773
* 스택
*/
const [K, ...n] = require('fs').readFileSync('/dev/stdin').toString().trim().split('\n');
const stk = [];
for (let i = 0; i < parseInt(K); i++) {
if (parseInt(n[i]) === 0) {
stk.pop();
} else {
stk.push(parseInt(n[i]));
}
}
console.log(stk.reduce((acc, num) => acc + num, 0));
스택 관련 문제로 해결법은 간단하다. 0일 때 pop 아닐 때 push 해주면 된다.
node 로 값을 받는 부분과 console.log 가 아닌 return 으로 결과를 내보내서 자꾸 실패가 나는 부분들 바로잡는게 오히려 시간이 많이 걸렸다.
BOJ 에서 node js 로 값을 받는 부분은 이 포스트를 참조했다. (https://tesseractjh.tistory.com/39)
'알고리즘 > 백준' 카테고리의 다른 글
[백준][자바스크립트][Silver4] 1920 수 찾기 (0) | 2022.01.18 |
---|
댓글