๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[๊ธฐ์ˆ ๋ฉด์ ‘][๊ฐœ๋ฐœ์ƒ์‹] ์ข‹์€ ์ฝ”๋“œ๋ž€ ๋ฌด์—‡์ธ๊ฐ€? ๊ธฐ์ˆ ๋ฉด์ ‘ ์ข‹์€ ์ฝ”๋“œ๋ž€ ๋ฌด์—‡์ธ๊ฐ€? โš ๏ธ ๊ฐœ์ธ ํ•™์Šต์„ ๋ชฉ์ ์œผ๋กœ ์ž‘์„ฑ๋œ ๊ธ€๋กœ ์ •ํ™•ํ•˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค โš ๏ธ ์„ธ์ƒ์—๋Š” ์ •๋ง ๋‹ค์–‘ํ•œ ์–ธ์–ด๋“ค์ด ์กด์žฌํ•˜์ง€๋งŒ ์–ธ์ œ๋‚˜ ์˜๋ฌธ์ ์„ ๊ฐ€์ง€๊ณ  ์˜๋…ผํ•˜๋Š” ์ฃผ์ œ๊ฐ€ ํ•˜๋‚˜ ์žˆ๋‹ค. ๋ฐ”๋กœ '์ข‹์€ ์ฝ”๋“œ๋ผ๋Š” ๊ฑด ๋ฌด์—‡์ธ๊ฐ€?' ์ด๋‹ค. ๋ฌผ๋ก  ์ด ์ฃผ์ œ์— ๋Œ€ํ•ด์„œ 'A๋Š” B์ด๋‹ค'์ฒ˜๋Ÿผ ๋ช…์พŒํ•œ ๋‹ต์ด ๋‚˜์˜ค๊ฑฐ๋‚˜ ์ •์˜ ๋‚ด๋ฆด ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์€ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ์•Œ๊ณ  ์žˆ์ง€๋งŒ ๊ทธ๋Ÿผ์—๋„ ์ด์— ๋Œ€ํ•ด ๊นŠ๊ฒŒ ๊ณ ๋ฏผํ•˜๋Š” ์ด์œ ๋Š” ์•„๋งˆ ํ˜„์žฌ ๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์ข€ ๋” ๋ฐœ์ „์‹œํ‚ค๊ณ  ๋‚˜์•„๊ฐ€๊ณ  ์‹ถ์€ ๋งˆ์Œ์— ๊ณ ๋ฏผํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹๊นŒ ์ƒ๊ฐ๋œ๋‹ค. ๋ฌผ๋ก  ๋‚˜ ๋˜ํ•œ ์ด๋Ÿฌํ•œ ์ฃผ์ œ์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐํ•ด ๋ณธ ์ ์ด ์žˆ์œผ๋‚˜, ์™œ(why)๋ผ๋Š” ์˜๋ฌธ์„ ๊ฐ€์ง€๊ณ  ๊นŠ๊ฒŒ ์ƒ๊ฐํ•ด ๋ณธ ์ ์€ ์—†๋Š” ๊ฒƒ ๊ฐ™๋‹ค. ์ด๋ฒˆ ๊ธฐํšŒ์— ๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ์ข‹์€ ์ฝ”๋“œ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด๊ณ  ์™œ ๊ทธ๋ ‡๊ฒŒ ์ƒ๊ฐ๋Š”์ง€์— ๋Œ€ํ•ด.. 2021. 6. 7.
[๋ฐฑ์ค€][Node.js] 1157๋ฒˆ : ๋‹จ์–ด ๊ณต๋ถ€ Algorithm - ๋‹จ์–ด ๊ณต๋ถ€ - ๋ฌธ์ œ ์•ŒํŒŒ๋ฒณ ๋Œ€์†Œ๋ฌธ์ž๋กœ ๋œ ๋‹จ์–ด๊ฐ€ ์ฃผ์–ด์ง€๋ฉด, ์ด ๋‹จ์–ด์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋œ ์•ŒํŒŒ๋ฒณ์ด ๋ฌด์—‡์ธ์ง€ ์•Œ์•„๋‚ด๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋‹จ, ๋Œ€์†Œ๋ฌธ์ž์™€ ์†Œ๋ฌธ์ž๋ฅผ ๊ตฌ๋ถ„ํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ฒซ์งธ ์ค„์— ์ด ๋‹จ์–ด์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋œ ์•ŒํŒŒ๋ฒณ์„ ๋Œ€๋ฌธ์ž๋กœ ์ถœ๋ ฅํ•œ๋‹ค. ๋‹จ, ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉ๋œ ์•ŒํŒŒ๋ฒณ์ด ์—ฌ๋Ÿฌ ์กด์žฌํ•˜๋Š” ๊ฒฝ์šฐ์—๋Š” ?๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().trim().toLowerCase().split(""); let alpha = input.filter((el, idx) => input.indexOf(el) === idx); let count = new A.. 2021. 6. 6.
[๋ฐฑ์ค€][Node.js] 1152๋ฒˆ : ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜ Algorithm - ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜ - ๋ฌธ์ œ ์˜์–ด ๋Œ€์†Œ๋ฌธ์ž์™€ ๋„์–ด์“ฐ๊ธฐ๋งŒ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ๋ฌธ์ž์—ด์—๋Š” ๋ช‡ ๊ฐœ์˜ ๋‹จ์–ด๊ฐ€ ์žˆ์„๊นŒ? ์ด๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋‹จ, ํ•œ ๋‹จ์–ด๊ฐ€ ์—ฌ๋Ÿฌ ๋ฒˆ ๋“ฑ์žฅํ•˜๋ฉด ๋“ฑ์žฅํ•œ ํšŸ์ˆ˜๋งŒํผ ๋ชจ๋‘ ์„ธ์–ด์•ผ ํ•œ๋‹ค. ์ฒซ ์ค„์— ์˜์–ด ๋Œ€์†Œ๋ฌธ์ž์™€ ๋„์–ด์“ฐ๊ธฐ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ด ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 1,000,000์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค. ๋‹จ์–ด๋Š” ๋„์–ด์“ฐ๊ธฐ ํ•œ ๊ฐœ๋กœ ๊ตฌ๋ถ„๋˜๋ฉฐ, ๊ณต๋ฐฑ์ด ์—ฐ์†ํ•ด์„œ ๋‚˜์˜ค๋Š” ๊ฒฝ์šฐ๋Š” ์—†๋‹ค. ๋˜ํ•œ ๋ฌธ์ž์—ด์˜ ์•ž๊ณผ ๋’ค์—๋Š” ๊ณต๋ฐฑ์ด ์žˆ์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().trim().split(" "); console.log(inp.. 2021. 6. 5.
[๋ฐฑ์ค€][Node.js] 1120๋ฒˆ : ๋ฌธ์ž์—ด Algorithm - ๋ฌธ์ž์—ด - ๋ฌธ์ œ ๊ธธ์ด๊ฐ€ N์œผ๋กœ ๊ฐ™์€ ๋ฌธ์ž์—ด X์™€ Y๊ฐ€ ์žˆ์„ ๋•Œ, ๋‘ ๋ฌธ์ž์—ด X์™€ Y์˜ ์ฐจ์ด๋Š” X[i] ≠ Y[i]์ธ i์˜ ๊ฐœ์ˆ˜์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, X = "jimin", Y = "minji"์ด๋ฉด, ๋‘˜์˜ ์ฐจ์ด๋Š” 4์ด๋‹ค. ๋‘ ๋ฌธ์ž์—ด A์™€ B๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์ด๋•Œ, A์˜ ๊ธธ์ด๋Š” B์˜ ๊ธธ์ด๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™๋‹ค. ์ด์ œ A์˜ ๊ธธ์ด๊ฐ€ B์˜ ๊ธธ์ด์™€ ๊ฐ™์•„์งˆ ๋•Œ๊นŒ์ง€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—ฐ์‚ฐ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. 1. A์˜ ์•ž์— ์•„๋ฌด ์•ŒํŒŒ๋ฒณ์ด๋‚˜ ์ถ”๊ฐ€ํ•œ๋‹ค. 2. A์˜ ๋’ค์— ์•„๋ฌด ์•ŒํŒŒ๋ฒณ์ด๋‚˜ ์ถ”๊ฐ€ํ•œ๋‹ค. ์ด๋•Œ, A์™€ B์˜ ๊ธธ์ด๊ฐ€ ๊ฐ™์œผ๋ฉด์„œ, A์™€ B์˜ ์ฐจ์ด๋ฅผ ์ตœ์†Œ๋กœ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ A์™€ B์˜ ๊ธธ์ด๊ฐ€ ๊ฐ™์œผ๋ฉด์„œ, A์™€ B์˜ ์ฐจ์ด๋ฅผ ์ตœ์†Œ๊ฐ€ ๋˜๋„๋ก ํ–ˆ์„ ๋•Œ, ๊ทธ ์ฐจ์ด๋ฅผ ์ถœ๋ ฅํ•˜์‹œ์˜ค. ๋ฌธ์ œ ํ’€๊ธฐ let fs = req.. 2021. 6. 4.
[๋ฐฑ์ค€][Node.js] 1100๋ฒˆ : ํ•˜์–€ ์นธ Algorithm - ํ•˜์–€ ์นธ - ๋ฌธ์ œ ์ฒด์ŠคํŒ์€ 8*8ํฌ๊ธฐ์ด๊ณ , ๊ฒ€์ • ์นธ๊ณผ ํ•˜์–€ ์นธ์ด ๋ฒˆ๊ฐˆ์•„๊ฐ€๋ฉด์„œ ์ƒ‰์น ๋˜์–ด ์žˆ๋‹ค. ๊ฐ€์žฅ ์œ„์ชฝ ์œ„์นธ (0, 0)์€ ํ•˜์–€์ƒ‰์ด๋‹ค. ์ฒด์Šค ํŒ์˜ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ํ•˜์–€ ์นธ ์œ„์— ๋ง์ด ๋ช‡ ๊ฐœ ์žˆ๋Š”์ง€ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ฒซ์งธ ์ค„ ๋ถ€ํ„ฐ 8๊ฐœ์˜ ์ค„์— ์ฒด์ŠคํŒ์˜ ์ƒํƒœ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. '.'์€ ๋นˆ ์นธ์ด๊ณ , 'F'๋Š” ์œ„์— ๋ง์ด ์žˆ๋Š” ์นธ์ด๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync("/dev/stdin") .toString() .trim() .split("\n"); let count = 0; for (let i = 0; i < input.length; i++) { for (let j = 0; j < input.. 2021. 6. 3.
[๋ฐฑ์ค€][Node.js] 1076๋ฒˆ : ์ €ํ•ญ Algorithm - ์ €ํ•ญ - ๋ฌธ์ œ ์ „์ž ์ œํ’ˆ์—๋Š” ์ €ํ•ญ์ด ๋“ค์–ด๊ฐ„๋‹ค. ์ €ํ•ญ์€ ์ƒ‰ 3๊ฐœ๋ฅผ ์ด์šฉํ•ด์„œ ๊ทธ ์ €ํ•ญ์ด ๋ช‡ ์˜ด์ธ์ง€ ๋‚˜ํƒ€๋‚ธ๋‹ค. ์ฒ˜์Œ ์ƒ‰ 2๊ฐœ๋Š” ์ €ํ•ญ์˜ ๊ฐ’์ด๊ณ , ๋งˆ์ง€๋ง‰ ์ƒ‰์€ ๊ณฑํ•ด์•ผ ํ•˜๋Š” ๊ฐ’์ด๋‹ค. ์ €ํ•ญ์˜ ๊ฐ’์€ ๋‹ค์Œ ํ‘œ๋ฅผ ์ด์šฉํ•ด์„œ ๊ตฌํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ €ํ•ญ์— ์ƒ‰์ด yellow, violet, red ์˜€๋‹ค๋ฉด ์ €ํ•ญ์˜ ๊ฐ’์€ 4,700์ด ๋œ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ์ฒซ์งธ ์ค„์— ์ฒซ ๋ฒˆ์งธ ์ƒ‰, ๋‘˜์งธ ์ค„์—๋Š” ๋‘ ๋ฒˆ์งธ ์ƒ‰, ์…‹์งธ ์ค„์— ์„ธ ๋ฒˆ์งธ ์ƒ‰์ด ์ฃผ์–ด์ง„๋‹ค. ์ƒ‰์€ ๋ชจ๋‘ ์œ„์˜ ํ‘œ์— ์“ฐ์—ฌ ์žˆ๋Š” ์ƒ‰๋งŒ ์ฃผ์–ด์ง„๋‹ค. ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().split("\n"); let color = [ "black", "brown", .. 2021. 6. 3.