๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[๋ฐฑ์ค€][Node.js] 10718๋ฒˆ : We love kriii Algorithm - We love kriii - ๋ฌธ์ œ ACM-ICPC ์ธํ„ฐ๋„ท ์˜ˆ์„ , Regional, ๊ทธ๋ฆฌ๊ณ  World Finals๊นŒ์ง€ ์ด๋ฏธ 2ํšŒ์”ฉ ์ง„์ถœํ•ด๋ฒ„๋ฆฐ kriii๋Š” ๋ฏธ๋ จ์„ ๋ฒ„๋ฆฌ์ง€ ๋ชปํ•˜๊ณ  ์™ ์ง€ ๋ชจ๋ฅด๊ฒŒ ์˜ฌํ•ด์—๋„ ํŒŒ์ฃผ World Finals ์ค€๋น„ ์บ ํ”„์— ์ฐธ์—ฌํ–ˆ๋‹ค. ๋Œ€ํšŒ๋ฅผ ๋œฐ ์ค„ ๋ชจ๋ฅด๋Š” ์ง€๋ฐ•๋ น kriii๋ฅผ ์œ„ํ•ด์„œ ๊ฒฉ๋ ค์˜ ๋ฌธ๊ตฌ๋ฅผ ์ถœ๋ ฅํ•ด์ฃผ์ž. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ console.log('๊ฐ•ํ•œ์นœ๊ตฌ ๋Œ€ํ•œ์œก๊ตฐ\n๊ฐ•ํ•œ์นœ๊ตฌ ๋Œ€ํ•œ์œก๊ตฐ'); 2022. 1. 27.
[๋ฐฑ์ค€][Node.js] 10707๋ฒˆ : ์ˆ˜๋„์š”๊ธˆ Algorithm - ์ˆ˜์š”๊ธˆ - ๋ฌธ์ œ JOI๊ตฐ์ด ์‚ด๊ณ  ์žˆ๋Š” ์ง€์—ญ์—๋Š” X์‚ฌ์™€ Y์‚ฌ, ๋‘ ๊ฐœ์˜ ์ˆ˜๋„ํšŒ์‚ฌ๊ฐ€ ์žˆ๋‹ค. ๋‘ ํšŒ์‚ฌ์˜ ์ˆ˜๋„์š”๊ธˆ์€ ํ•œ ๋‹ฌ๊ฐ„ ์ˆ˜๋„์˜ ์‚ฌ์šฉ๋Ÿ‰์— ๋”ฐ๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •ํ•ด์ง„๋‹ค. X์‚ฌ : 1๋ฆฌํ„ฐ๋‹น A์—”. Y์‚ฌ : ๊ธฐ๋ณธ์š”๊ธˆ์€ B์—”์ด๊ณ , ์‚ฌ์šฉ๋Ÿ‰์ด C๋ฆฌํ„ฐ ์ดํ•˜๋ผ๋ฉด ์š”๊ธˆ์€ ๊ธฐ๋ณธ์š”๊ธˆ๋งŒ ์ฒญ๊ตฌ๋œ๋‹ค. ์‚ฌ์šฉ๋Ÿ‰์ด C๋ฆฌํ„ฐ๊ฐ€ ๋„˜์—ˆ์„ ๊ฒฝ์šฐ ๊ธฐ๋ณธ์š”๊ธˆ B์—”์— ๋”ํ•ด์„œ ์ถ”๊ฐ€์š”๊ธˆ์ด ๋ถ™๋Š”๋‹ค. ์ถ”๊ฐ€์š”๊ธˆ์€ ์‚ฌ์šฉ๋Ÿ‰์ด C๋ฆฌํ„ฐ๋ฅผ ๋„˜์—ˆ์„ ๊ฒฝ์šฐ 1๋ฆฌํ„ฐ๋ฅผ ๋„˜์—ˆ์„ ๋•Œ๋งˆ๋‹ค D์—”์ด๋‹ค. JOI๊ตฐ์˜ ์ง‘์—์„œ ํ•œ ๋‹ฌ๊ฐ„ ์“ฐ๋Š” ์ˆ˜๋„์˜ ์–‘์€ P๋ฆฌํ„ฐ์ด๋‹ค. ์ˆ˜๋„์š”๊ธˆ์ด ์ตœ๋Œ€ํ•œ ์‹ธ๊ฒŒ ๋˜๋„๋ก ์ˆ˜๋„ํšŒ์‚ฌ๋ฅผ ๊ณ ๋ฅผ ๋•Œ, JOI๊ตฐ์˜ ์ง‘์˜ 1๋‹ฌ๊ฐ„ ์ˆ˜๋„์š”๊ธˆ์„ ๊ตฌํ•˜์—ฌ๋ผ. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync(.. 2022. 1. 26.
[๋ฐฑ์ค€][Node.js] 10699๋ฒˆ : ์˜ค๋Š˜ ๋‚ ์งœ Algorithm - ์˜ค๋Š˜ ๋‚ ์งœ - ๋ฌธ์ œ ์„œ์šธ์˜ ์˜ค๋Š˜ ๋‚ ์งœ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ console.log(new Date().toISOString().slice(0, 10)); 2022. 1. 25.
[๋ฐฑ์ค€][Node.js] 10610๋ฒˆ : 30 Algorithm - 30 - ๋ฌธ์ œ ์–ด๋Š ๋‚ , ๋ฏธ๋ฅด์ฝ”๋Š” ์šฐ์—ฐํžˆ ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์–‘์ˆ˜ N์„ ๋ณด์•˜๋‹ค. ๋ฏธ๋ฅด์ฝ”๋Š” 30์ด๋ž€ ์ˆ˜๋ฅผ ์กด๊ฒฝํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋Š” ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์ฐพ์€ ์ˆ˜์— ํฌํ•จ๋œ ์ˆซ์ž๋“ค์„ ์„ž์–ด 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•œ๋‹ค. ๋ฏธ๋ฅด์ฝ”๋ฅผ ๋„์™€ ๊ทธ๊ฐ€ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•˜๋Š” ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync("/dev/stdin") .toString() .trim() .split("") .map((el) => Number(el)); // STEP01. ์ผ์˜ ์ž๋ฆฌ๊ฐ€ 0์ด ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค if (!input.includes(0)) { console.log(-1); return;.. 2022. 1. 24.
[๋ฐฑ์ค€][Node.js] 10569๋ฒˆ : ๋‹ค๋ฉด์ฒด Algorithm - ๋‹ค๋ฉด์ฒด - ๋ฌธ์ œ ์ˆ˜ํ•™์ž๊ฐ€ ๊ตฌ๋ฅผ ๊นŽ์•„์„œ ๋ณผ๋ก๋‹ค๋ฉด์ฒด๋ฅผ ๋งŒ๋“ค์—ˆ๋‹ค. ์ด ์ˆ˜ํ•™์ž๋Š” ์ž„์˜์˜ ๋ณผ๋ก๋‹ค๋ฉด์ฒด์— ๋Œ€ํ•ด (๊ผญ์ง“์ ์˜ ์ˆ˜) - (๋ชจ์„œ๋ฆฌ์˜ ์ˆ˜) + (๋ฉด์˜ ์ˆ˜) = 2๊ฐ€ ์„ฑ๋ฆฝํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ๋‹ค. ๊ทธ๋ž˜์„œ ๊ตฌ๋ฅผ ๊นŽ๋Š” ๊ฒŒ ์ทจ๋ฏธ์ธ ์ด ์‚ฌ๋žŒ์€ ๊ผญ์ง“์ , ๋ชจ์„œ๋ฆฌ์™€ ๋ฉด์˜ ์ˆ˜๋ฅผ ๊ธฐ๋กํ•  ๋•Œ ๊ผญ์ง“์ ๊ณผ ๋ชจ์„œ๋ฆฌ์˜ ์ˆ˜๋งŒ ์„ธ๊ณ  ๋ฉด์˜ ์ˆ˜๋Š” ์„ธ์ง€ ์•Š๋Š”๋‹ค ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ const readline = require("readline"); const rl = readline.createInterface({ input: process.stdin, output: process.stdout, }); let input = []; let result = []; rl.on("line", function (line) { inpu.. 2022. 1. 21.
[๋ฐฑ์ค€][Node.js] 10539๋ฒˆ : ์ˆ˜๋นˆ์ด์™€ ์ˆ˜์—ด Algorithm - ์ˆ˜๋นˆ์ด์™€ ์ˆ˜์—ด - ๋ฌธ์ œ ์ˆ˜๋นˆ์ด๋Š” ์‹ฌ์‹ฌํ•ด์„œ ์ˆ˜์—ด์„ ๊ฐ€์ง€๊ณ  ๋†€๊ณ  ์žˆ๋‹ค. ๋จผ์ €, ์ •์ˆ˜ ์ˆ˜์—ด A๋ฅผ ์“ด๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์•„๋ž˜์— ์ •์ˆ˜ ์ˆ˜์—ด A์˜ ํ•ด๋‹น ํ•ญ๊นŒ์ง€์˜ ํ‰๊ท ๊ฐ’์„ ๊ทธ ํ•ญ์œผ๋กœ ํ•˜๋Š” ์ •์ˆ˜ ์ˆ˜์—ด B๋ฅผ ์“ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ˆ˜์—ด A๊ฐ€ 1, 3, 2, 6, 8์ด๋ผ๋ฉด, ์ˆ˜์—ด B๋Š” 1/1, (1+3)/2, (1+3+2)/3, (1+3+2+6)/4, (1+3+2+6+8)/5, ์ฆ‰, 1, 2, 2, 3, 4๊ฐ€ ๋œ๋‹ค. ์ˆ˜์—ด B๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ, ์ˆ˜๋นˆ์ด์˜ ๊ทœ์น™์— ๋”ฐ๋ฅธ ์ˆ˜์—ด A๋Š” ๋ญ˜๊นŒ? ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ const readline = require("readline"); const rl = readline.createInterface({ input: process.stdin, output: process.std.. 2022. 1. 19.