Notice
Recent Posts
Recent Comments
Link
ยซ   2024/09   ยป
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

Lennon FE

[๋ฐฑ์ค€ 10828๋ฒˆ] ์Šคํƒ - ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(nodejs) ๋ณธ๋ฌธ

๐Ÿ”ฅ Algorithm/Baekjoon

[๋ฐฑ์ค€ 10828๋ฒˆ] ์Šคํƒ - ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ(nodejs)

Lennon 2022. 1. 20. 15:06
728x90
๋ฐ˜์‘ํ˜•

https://www.acmicpc.net/problem/10828

 

10828๋ฒˆ: ์Šคํƒ

์ฒซ์งธ ์ค„์— ์ฃผ์–ด์ง€๋Š” ๋ช…๋ น์˜ ์ˆ˜ N (1 ≤ N ≤ 10,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ๋ช…๋ น์ด ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ์ •์ˆ˜๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 100,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค. ๋ฌธ์ œ์— ๋‚˜์™€์žˆ์ง€

www.acmicpc.net

const fs = require('fs');
let input = fs.readFileSync('dev/stdin').toString().trim().split('\n');

const stack = [];
const result = [];

const repeatLen = input.shift();

for (let i = 0; i < repeatLen; i++) {
  switch (input[i]) {
    case 'pop':
      result.push(stack.pop() || -1);
      break;

    case 'size':
      result.push(stack.length);
      break;

    case 'empty':
      result.push(stack[0] ? 0 : 1);
      break;

    case 'top':
      result.push(stack[stack.length - 1] || -1);
      break;

    default:
      stack.push(input[i].split(' ')[1]);
      break;
  }
}

console.log(result.join('\n'));

input ์ตœ๋Œ€๊ฐ’์ด 10,000์ด๋ฏ€๋กœ for๋ฌธ์•ˆ์—์„œ console.log๋ฅผ ์“ฐ๊ฒŒ๋˜๋ฉด ์‹œ๊ฐ„์ œํ•œ 0.5์ดˆ ๋ฌธ์ œ์—์„œ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚  ํ™•๋ฅ ์ด ๋†’๋‹ค.

switch๋ฌธ์—์„œ ๋‹จ์ถ• ํ‰๊ฐ€๋ฅผ ์ด์šฉํ•ด result ๋ฐฐ์—ด์— pushํ•˜๊ณ  ๋งˆ์ง€๋ง‰์— join์„ ์ด์šฉํ•ด result ๋ฐฐ์—ด์„ ๋“ค์—ฌ์“ฐ๊ธฐ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•
Comments