한 줄에 쇠막대기와 레이저의 배치를 나타내는 괄호 표현이 공백없이 주어진다. 괄호 문자의 개수는 최대 100,000이다.
let s = require('fs').readFileSync('/dev/stdin').toString().trim();
function solution(s) {
let answer = 0;
let stack = [];
for (let i = 0; i < s.length; i++) {
if (s[i] === "(") stack.push("(");
else {
stack.pop(); // 먼저 없애지 않으면 레이저의 잔여부분이 카운팅 된다.
if (s[i - 1] === "(") answer += stack.length;
// 레이저, 레이저를 맞으면 stack 수만큼 막대기가 추가됨
else answer++; // 막대기의 끝, 막대기가 끝나면 한조각 추가
}
}
return answer;
}
console.log(solution(s));