๋ชฉ๋ก๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ (115)
let's get IT with DAVINA ๐ป
โ ๋ฌธ์ ์ค๋ช ๋จธ์ฑ์ด๋ ์น๊ตฌ์๊ฒ ๋ชจ์ค๋ถํธ๋ฅผ ์ด์ฉํ ํธ์ง๋ฅผ ๋ฐ์์ต๋๋ค. ๊ทธ๋ฅ์ ์ฝ์ ์ ์์ด ์ด๋ฅผ ํด๋ ํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๋ ค๊ณ ํฉ๋๋ค. ๋ฌธ์์ด letter๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, letter๋ฅผ ์์ด ์๋ฌธ์๋ก ๋ฐ๊พผ ๋ฌธ์์ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์. ๋ชจ์ค๋ถํธ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. morse = { '.-':'a','-...':'b','-.-.':'c','-..':'d','.':'e','..-.':'f', '--.':'g','....':'h','..':'i','.---':'j','-.-':'k','.-..':'l', '--':'m','-.':'n','---':'o','.--.':'p','--.-':'q','.-.':'r', '...':'s','-':'t','..-':'u','....
โ ๋ฌธ์ ํ ์ค๋ก ๋ ๊ฐ๋จํ ์๋ํฐ๋ฅผ ๊ตฌํํ๋ ค๊ณ ํ๋ค. ์ด ํธ์ง๊ธฐ๋ ์์ด ์๋ฌธ์๋ง์ ๊ธฐ๋กํ ์ ์๋ ํธ์ง๊ธฐ๋ก, ์ต๋ 600,000๊ธ์๊น์ง ์ ๋ ฅํ ์ ์๋ค. ์ด ํธ์ง๊ธฐ์๋ '์ปค์'๋ผ๋ ๊ฒ์ด ์๋๋ฐ, ์ปค์๋ ๋ฌธ์ฅ์ ๋งจ ์(์ฒซ ๋ฒ์งธ ๋ฌธ์์ ์ผ์ชฝ), ๋ฌธ์ฅ์ ๋งจ ๋ค(๋ง์ง๋ง ๋ฌธ์์ ์ค๋ฅธ์ชฝ), ๋๋ ๋ฌธ์ฅ ์ค๊ฐ ์์์ ๊ณณ(๋ชจ๋ ์ฐ์๋ ๋ ๋ฌธ์ ์ฌ์ด)์ ์์นํ ์ ์๋ค. ์ฆ ๊ธธ์ด๊ฐ L์ธ ๋ฌธ์์ด์ด ํ์ฌ ํธ์ง๊ธฐ์ ์ ๋ ฅ๋์ด ์์ผ๋ฉด, ์ปค์๊ฐ ์์นํ ์ ์๋ ๊ณณ์ L+1๊ฐ์ง ๊ฒฝ์ฐ๊ฐ ์๋ค. ์ด ํธ์ง๊ธฐ๊ฐ ์ง์ํ๋ ๋ช ๋ น์ด๋ ๋ค์๊ณผ ๊ฐ๋ค. ๋ช ๋ น ์ํํ ๋ช ๋ น L ์ปค์๋ฅผ ์ผ์ชฝ์ผ๋ก ํ ์นธ ์ฎ๊น (์ปค์๊ฐ ๋ฌธ์ฅ์ ๋งจ ์์ด๋ฉด ๋ฌด์๋จ) D ์ปค์๋ฅผ ์ค๋ฅธ์ชฝ์ผ๋ก ํ ์นธ ์ฎ๊น (์ปค์๊ฐ ๋ฌธ์ฅ์ ๋งจ ๋ค์ด๋ฉด ๋ฌด์๋จ) B ์ปค์ ์ผ์ชฝ์ ์๋ ๋ฌธ์๋ฅผ ์ญ์ ํจ (์ปค์๊ฐ..
๋ณดํธ๋์ด ์๋ ๊ธ์ ๋๋ค.
โ ๋ฌธ์ ์ค๋ช ์ธ๊ณผ์์ฌ ๋จธ์ฑ์ด๋ ์๊ธ์ค์ ์จ ํ์์ ์๊ธ๋๋ฅผ ๊ธฐ์ค์ผ๋ก ์ง๋ฃ ์์๋ฅผ ์ ํ๋ ค๊ณ ํฉ๋๋ค. ์ ์ ๋ฐฐ์ด emergency๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋ ์๊ธ๋๊ฐ ๋์ ์์๋๋ก ์ง๋ฃ ์์๋ฅผ ์ ํ ๋ฐฐ์ด์ returnํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ๐ซ ์ ํ์ฌํญ ์ค๋ณต๋ ์์๋ ์์ต๋๋ค. 1 ≤ emergency์ ๊ธธ์ด ≤ 10 1 ≤ emergency์ ์์ ≤ 100 ๐๏ธ ์ ์ถ๋ ฅ ์ emergency result [3, 76, 24] [3, 1, 2] [1, 2, 3, 4, 5, 6, 7] [7, 6, 5, 4, 3, 2, 1] [30, 10, 23, 6, 100] [2, 4, 3, 5, 1] โ๏ธ ๋น๋'s ํ์ด ๋ถ๋ช ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์ด์ ์ ๋ ฌํด๋ณธ๋ค, ์์์ index๊ฐ์ ์ฐพ์์ ์กฐ์ ํ๋ ๋ก์ง์ ๋ง..
๋ณดํธ๋์ด ์๋ ๊ธ์ ๋๋ค.
โ ๋ฌธ์ ์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ง ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ์ํ๋ฒณ์ด ๋จ์ด์ ๋ช ๊ฐ๊ฐ ํฌํจ๋์ด ์๋์ง ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ ๋ ฅ ์ฒซ์งธ ์ค์ ๋จ์ด S๊ฐ ์ฃผ์ด์ง๋ค. ๋จ์ด์ ๊ธธ์ด๋ 100์ ๋์ง ์์ผ๋ฉฐ, ์ํ๋ฒณ ์๋ฌธ์๋ก๋ง ์ด๋ฃจ์ด์ ธ ์๋ค. ์ถ๋ ฅ ๋จ์ด์ ํฌํจ๋์ด ์๋ a์ ๊ฐ์, b์ ๊ฐ์, …, z์ ๊ฐ์๋ฅผ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด์ ์ถ๋ ฅํ๋ค. ๐๏ธ ์์ ์ ๋ ฅ baekjoon ๐๏ธ ์์ ์ถ๋ ฅ 1 1 0 0 1 0 0 0 0 1 1 0 0 1 2 0 0 0 0 0 0 0 0 0 0 0 โ๏ธ ๋น๋'s ํ์ด const fs = require("fs"); const input = fs.readFileSync("/dev/stdin").toString().trim(); let alphabet = "abcdefghijklm..
ํ๋ก๊ทธ๋๋จธ์ค๋ก๋ง ํ๋ ค๋ค๊ฐ ๋ฐํน๋ ์๊ณ ๋ฆฌ์ฆ ๊ฐ๋ ์ ๋ฐฐ์ฐ๋ฉด ํด๋น ์ ํ์ ๋ฐ๋ก ๋ณต์ตํ๊ณ ์ถ์ด์ ๋ฐฑ์ค๋ ๋ณํํ๊ธฐ๋ก ํ๋ค! ๋ฐฑ์ค..nodejs๋ก ํ๋ ค๊ณ ํ๋ ๋๋ฌด ์ด๋ ค์์ ํ๋ฃจ์ฃ์ผ ์ด๊ฒ๋ง ์์๋ดค๋คใ ใ ์ ๋ ฅ๊ฐ ๋ฐ๊ธฐ 7 pop top push 123 top pop top pop fs : fs(file system) ๋ชจ๋๋ก ๋ฐ์์์ผ ํ๋ค. (์ ๋ ฅ ํ์ผ์ ๊ฒฝ๋ก๋ "/dev/stdin") input : input.txt์ ๊ฐ์ ํ์ผ์ ๊ฐ์ string์ผ๋ก ๋ณํํด์ฃผ๊ธฐ // 1. ์ ๋ ฅ๊ฐ์ด ํ ๊ฐ์ผ ๋(ํ ์ค) const fs = require('fs'); const input = fs.readFileSync("/dev/stdin").toString().trim(); // 2. ์ ๋ ฅ๊ฐ์ด ์ฌ๋ฌ ๊ฐ์ผ ๋(ํ ์ค์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ) ..
์๊ณ ๋ฆฌ์ฆ ๊ฐ์๋ฅผ ๋ณด๋ฉด์ ์ฐ์ต๋ฌธ์ ํ์ด๋ฅผ C++๋ก ๋ค์ผ๋ ํ๋๋ ์ดํด๊ฐ ์๊ฐ์ ์ด๋ก ๋ง ์ฃผ๊ตฌ์ฅ์ฐฝ ๋น ๋ฅด๊ฒ ๋ดค๋ค.. ๊ฐ๋ ์ ๋ฐฐ์ ์ผ๋ฉด ๊ทธ์ ํด๋น๋๋ ๋ฌธ์ ๋ฅผ ํ๋๋ผ๋ ์ง์ ํ์ด๋ด์ผ๊ฒ ๋ค์ถ์ด์ ๋ฐฑ์ค์ ํ์ด๋ดค๋ค..(์ด๋ ต..) โ ๋ฌธ์ ์ ์๋ฅผ ์ ์ฅํ๋ ์คํ์ ๊ตฌํํ ๋ค์, ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง๋ ๋ช ๋ น์ ์ฒ๋ฆฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋ช ๋ น์ ์ด ๋ค์ฏ ๊ฐ์ง์ด๋ค. - push X: ์ ์ X๋ฅผ ์คํ์ ๋ฃ๋ ์ฐ์ฐ์ด๋ค. - pop: ์คํ์์ ๊ฐ์ฅ ์์ ์๋ ์ ์๋ฅผ ๋นผ๊ณ , ๊ทธ ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ ์คํ์ ๋ค์ด์๋ ์ ์๊ฐ ์๋ ๊ฒฝ์ฐ์๋ -1์ ์ถ๋ ฅํ๋ค. - size: ์คํ์ ๋ค์ด์๋ ์ ์์ ๊ฐ์๋ฅผ ์ถ๋ ฅํ๋ค. - empty: ์คํ์ด ๋น์ด์์ผ๋ฉด 1, ์๋๋ฉด 0์ ์ถ๋ ฅํ๋ค. - top: ์คํ์ ๊ฐ์ฅ ์์ ์๋ ์ ์๋ฅผ ์ถ๋ ฅํ๋ค. ๋ง์ฝ ์คํ์ ๋ค์ด..