์ฝ๋ฉ ํ ์คํธ/๋ฐฑ์ค(18)
-
[๋ฐฑ์ค] ์ํ๋ฒณ ์ฐพ๊ธฐ
๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/10809 ์ ๋ ฅ๋ ๋ฌธ์์ด์ ์ํํ์ฌ ๊ฐ ๋ฌธ์์ ASCII ์ฝ๋๋ฅผ ์ด์ฉํ์ฌ ์ํ๋ฒณ์ ์ธ๋ฑ์ค๋ฅผ ์ฐพ๋๋ค. ํด๋น ์ํ๋ฒณ์ด ์๋ค๋ฉด -1๋ก ๊ฐ์ ์นํํ๋ค. ํด๋น ์ํ๋ฒณ์ด ์๋ค๋ฉด ์ฒซ ๋ฑ์ฅ ์์น๋ฅผ ์นํํ๋ค. const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().trim(); const result = new Array(26).fill(-1); for (let i = 0; i < input.length; i++) { const index = input.charCodeAt(i) - 97; if (result[index] === -1) { result[index] ..
2024.02.14 -
[๋ฐฑ์ค] ์ํ๋ฒณ ๊ฐ์
๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/10808 ๊ฐ ์ํ๋ฒณ์ ๊ฐ์๋ฅผ ๋ด์ ๋ฐฐ์ด์ ๋ง๋ค๊ณ ๋ชจ๋ ์์๋ฅด 0์ผ๋ก ์ด๊ธฐํํ๋ค. ๊ฐ ๋ฌธ์์ ASCII ์ฝ๋๋ฅผ ์ด์ฉํ์ฌ ์ํ๋ฒณ์ ์ธ๋ฑ์ค๋ฅผ ์ฐพ๊ณ , ํด๋น ์ธ๋ฑ์ค์ ์นด์ดํธ๋ฅผ ์ฆ๊ฐ์ํจ๋ค. const fs = require('fs'); const input = fs.readFileSync('/dev/stdin').toString().trim(); const counts = new Array(26).fill(0); for (let i = 0; i < input.length; i++) { counts[input.charCodeAt(i) - 97]++; } console.log(counts.join(' '));
2024.02.14 -
[๋ฐฑ์ค] ํ์ ํ๊ธฐ์
๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/1918 ์คํ์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค. ์ ๋ ฅ ๋ฐ์ ๊ฐ์ ์ํํ์ฌ ์ฐ์ฐ์์ ์ฐ์ ์์์ ๊ดํธ๋ฅผ ๊ณ ๋ คํ์ฌ ์คํ์ ์ฌ์ฉํด ํ์ ํํ์์ ๊ตฌ์ฑํ๋ค. ์ฐ์ฐ์๋ฅผ ๋ง๋ ๋๋ง๋ค ์คํ์ ์์ ์ฐ์ฐ์์ ์ฐ์ ์์๋ฅผ ๋น๊ตํ์ฌ ์กฐ๊ฑด์ ๋ฐ๋ผ ์คํ์์ ์ฐ์ฐ์๋ฅผ ๊บผ๋ด ๊ฒฐ๊ณผ ๋ฌธ์์ด์ ์ถ๊ฐํ๋ค. ๊ดํธ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํด '('๋ฅผ ๋ง๋๋ฉด ์คํ์ push() ํ๊ณ , ')'๋ฅผ ๋ง๋๋ฉด '('๊ฐ ๋์ฌ ๋๊น์ง ์คํ์์ ์ฐ์ฐ์๋ฅผ ๊บผ๋ด ๊ฒฐ๊ณผ์ ์ถ๊ฐํ๋ค. ์ํ๊ฐ ๋๋๋ฉด ์คํ์ ๋จ์ ๋ชจ๋ ์ฐ์ฐ์๋ฅผ ๊ฒฐ๊ณผ์ ์ถ๊ฐํ๋ค. const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin,..
2024.02.14 -
[๋ฐฑ์ค] ํ์ ํ๊ธฐ์2
๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/1935 ํ์ ํ๊ธฐ์์ ์ฐ์ฐํ๋ ํจ์๋ฅผ ์ ์ํ๊ณ (calculatePostFix()), ์ ๋ ฅ ๋ฐ์ ๊ฐ์ ์ฐ์ฐํ์ฌ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ค. const readline = require('readline') const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); let lineNumber = 0 let N = 0; let expression = '' const values = [] rl.on('line', function(line) { if (lineNumber === 0) { N = parseInt(line) } else if (lineNumber..
2024.02.08 -
[๋ฐฑ์ค] ์ค๋ฑํฐ์
๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/17299 ์คํ์ ์ฌ์ฉํ์ฌ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค. ์ ๋ ฅ๋ฐ์ ์ซ์ ๋ฆฌ์คํธ๋ฅผ ์ํํ์ฌ ๊ฐ ์ซ์์ ์ค๋ฑํฐ์๋ฅผ ์ฐพ๋๋ค. ์คํ์๋ ์์ง ์ค๋ฑํฐ์๋ฅผ ์ฐพ์ง ๋ชปํ ์ซ์๋ค์ ์ธ๋ฑ์ค๊ฐ ์กด์ฌํ๋ค. ๋ง์ฝ ํ์ฌ ์ซ์์ ๋ฑ์ฅ ํ์๊ฐ ์คํ์ ๋งจ ์์ ์๋ ์ซ์์ ๋ฑ์ฅ ํ์๋ณด๋ค ํฌ๋ฉด, ์คํ์์ ์ซ์๋ค์ ๊บผ๋ด์ด ํด๋น ์ซ์๋ค์ ์ค๋ฑํฐ์๋ฅผ ํ์ฌ ์ซ์๋ก ๋ณ๊ฒฝํ๋ค. ๋ชจ๋ ์ซ์๋ฅผ ์ฒ๋ฆฌ ํ, ๊ฐ ์ซ์์ ์ค๋ฑํฐ์๋ฅผ ๋ด์ ๋ฐฐ์ด์ ์ถ๋ ฅํ๋ค. const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); let input = []..
2024.02.06 -
[๋ฐฑ์ค] ์คํฐ์
๋ฌธ์ ๋งํฌ: https://www.acmicpc.net/problem/17298 ์คํ์ ์ฌ์ฉํด์ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ค. ์คํ์๋ ์์ง ์คํฐ์๋ฅผ ์ฐพ์ง ๋ชปํ ์์๋ค์ ์ธ๋ฑ์ค๋ฅผ ์ ์ฅํ๋ค. ์์ด์ ์ผ์ชฝ์์ ์ค๋ฅธ์ชฝ์ผ๋ก ์ํํ๋ฉด์, ํ์ฌ ์์๊ฐ ์คํ์ ๋งจ ์์ ์๋ ์์๋ณด๋ค ํฌ๋ค๋ฉด, ๊ทธ ์์์ ์คํฐ์๋ ํ์ฌ ์์๋ฅผ ์๋ฏธํ๋ค. ์ ๊ณผ์ ์ ๋ฐ๋ณตํ์ฌ, ๊ฐ ์์์ ์คํฐ์๋ฅผ ์ฐพ์ ๋ฐํํ๊ฑฐ๋, ์คํฐ์๊ฐ ์๋ค๋ฉด -1์ ๋ฐํํ๋ค. const readline = require('readline'); const rl = readline.createInterface({ input: process.stdin, output: process.stdout }); let input = []; rl.on('line', function(line) ..
2024.02.05