본문 바로가기
코딩테스트(알고리즘)/baekjoon

[baekjoon] 3986 좋은 단어(javascript)

by Cafe Mocha 2023. 1. 6.

3986번: 좋은 단어 (acmicpc.net)

 

3986번: 좋은 단어

이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에

www.acmicpc.net


function solution() {
  let input = require("fs")
    .readFileSync("input.txt")
    .toString()
    .trim()
    .split("\n")
    .map((val) => val.trim());

  let n = +input.shift();
  let str = input.map((v) => v.split(""));
  let stack = [];
  let result = 0;

  str.forEach((v) => {
    let len = v.length;
    for (let i = 0; i < len; i++) {
      let temp = v.pop();
      if (stack.length === 0) stack.push(temp);
      else if (stack.at(-1) === temp) stack.pop();
      else stack.push(temp);
    }

    if (stack.length === 0) result++;

    stack = [];
  });

  console.log(result);
}

solution();