๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[๋ฐฑ์ค€][Node.js] 1316๋ฒˆ : ๊ทธ๋ฃน ๋‹จ์–ด ์ฒด์ปค Algorithm - ๊ทธ๋ฃน ๋‹จ์–ด ์ฒด์ปค - ๋ฌธ์ œ ๊ทธ๋ฃน ๋‹จ์–ด๋ž€ ๋‹จ์–ด์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ๋ฌธ์ž์— ๋Œ€ํ•ด์„œ, ๊ฐ ๋ฌธ์ž๊ฐ€ ์—ฐ์†ํ•ด์„œ ๋‚˜ํƒ€๋‚˜๋Š” ๊ฒฝ์šฐ๋งŒ์„ ๋งํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด, ccazzzzbb๋Š” c, a, z, b๊ฐ€ ๋ชจ๋‘ ์—ฐ์†ํ•ด์„œ ๋‚˜ํƒ€๋‚˜๊ณ , kin๋„ k, i, n์ด ์—ฐ์†ํ•ด์„œ ๋‚˜ํƒ€๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฃน ๋‹จ์–ด์ด์ง€๋งŒ, aabbbccb๋Š” b๊ฐ€ ๋–จ์–ด์ ธ์„œ ๋‚˜ํƒ€๋‚˜๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ฃน ๋‹จ์–ด๊ฐ€ ์•„๋‹ˆ๋‹ค. ๋‹จ์–ด N๊ฐœ๋ฅผ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›์•„ ๊ทธ๋ฃน ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.readFileSync("/dev/stdin").toString().trim().split("\n"); let result = 0; for (let i = 1; i 2021. 6. 19.
[๋ฐฑ์ค€][Node.js] 1110๋ฒˆ : ๋”ํ•˜๊ธฐ ์‚ฌ์ดํด Algorithm - ๋”ํ•˜๊ธฐ ์‚ฌ์ดํด - ๋ฌธ์ œ 0๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 99๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์งˆ ๋•Œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—ฐ์‚ฐ์„ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋จผ์ € ์ฃผ์–ด์ง„ ์ˆ˜๊ฐ€ 10๋ณด๋‹ค ์ž‘๋‹ค๋ฉด ์•ž์— 0์„ ๋ถ™์—ฌ ๋‘ ์ž๋ฆฌ ์ˆ˜๋กœ ๋งŒ๋“ค๊ณ , ๊ฐ ์ž๋ฆฌ์˜ ์ˆซ์ž๋ฅผ ๋”ํ•œ๋‹ค. ๊ทธ ๋‹ค์Œ, ์ฃผ์–ด์ง„ ์ˆ˜์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์ž๋ฆฌ ์ˆ˜์™€ ์•ž์—์„œ ๊ตฌํ•œ ํ•ฉ์˜ ๊ฐ€์žฅ ์˜ค๋ฅธ์ชฝ ์ž๋ฆฌ ์ˆ˜๋ฅผ ์ด์–ด ๋ถ™์ด๋ฉด ์ƒˆ๋กœ์šด ์ˆ˜๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์Œ ์˜ˆ๋ฅผ ๋ณด์ž. 26๋ถ€ํ„ฐ ์‹œ์ž‘ํ•œ๋‹ค. 2+6 = 8์ด๋‹ค. ์ƒˆ๋กœ์šด ์ˆ˜๋Š” 68์ด๋‹ค. 6+8 = 14์ด๋‹ค. ์ƒˆ๋กœ์šด ์ˆ˜๋Š” 84์ด๋‹ค. 8+4 = 12์ด๋‹ค. ์ƒˆ๋กœ์šด ์ˆ˜๋Š” 42์ด๋‹ค. 4+2 = 6์ด๋‹ค. ์ƒˆ๋กœ์šด ์ˆ˜๋Š” 26์ด๋‹ค. ์œ„์˜ ์˜ˆ๋Š” 4๋ฒˆ๋งŒ์— ์›๋ž˜ ์ˆ˜๋กœ ๋Œ์•„์˜ฌ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ 26์˜ ์‚ฌ์ดํด์˜ ๊ธธ์ด๋Š” 4์ด๋‹ค. N์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, N์˜ ์‚ฌ์ดํด์˜ ๊ธธ์ด๋ฅผ ๊ตฌ.. 2021. 6. 18.
[๋ฐฑ์ค€][Node.js] 1271๋ฒˆ : ์—„์ฒญ๋‚œ ๋ถ€์ž2 Algorithm - ๋‘ ๊ฐœ ๋ฝ‘์•„์„œ ๋”ํ•˜๊ธฐ - ๋ฌธ์ œ ๊ฐ‘๋ถ€ ์ตœ๋ฐฑ์ค€ ์กฐ๊ต๋Š” ๋™์ „์„ ์ตœ์†Œ๋กœ ๋ฐ”๊พธ๋Š”๋ฐ ์„ฑ๊ณตํ–ˆ์œผ๋‚˜ ๊น€์žฌํ™ ์กฐ๊ต๊ฐ€ ๊ทธ ๋ˆ์„ ๋ฐœ๊ฒฌํ•ด์„œ ์ตœ๋ฐฑ์ค€ ์กฐ๊ต์—๊ฒŒ ๊ทธ ๋ˆ์„ ๋‚˜๋ˆ„์ž๊ณ  ๋”ฐ์ง„๋‹ค. ๊ทธ ์‚ฌ์‹ค์ด ์ „ ์šฐ์ฃผ๋กœ ์•Œ๋ ค์ง€์ž ์šฐ์ฃผ์— ์žˆ๋˜ ๋งŽ์€ ์ƒ๋ช…์ฒด๋“ค์ด ์ž์‹ ๋“ค์—๊ฒŒ ๋ˆ์„ ๋ถ„๋ฐฐํ•ด ๋‹ฌ๋ผ๊ณ  ๋‹น์žฅ ๋‹ฌ๋ ค์˜ค๊ธฐ ์‹œ์ž‘ํ–ˆ๋‹ค. ํ”„๋กœํ† ์Šค ์ค‘์•™ ์šฐ์ฃผ ์ •๋ถ€์˜ ์ •์ฑ…์ธ, ‘๋ชจ๋“  ์ง€์  ์ƒ๋ช…์ฒด๋Š” ๋™๋“ฑํ•˜๋‹ค’๋ผ๋Š” ๊ทœ์น™์— ์ž…๊ฐํ•ด์„œ ๋ˆ์„ ๋˜‘๊ฐ™์ด ๋ถ„๋ฐฐํ•˜๊ณ ์ž ํ•œ๋‹ค. ํ•œ ์ƒ๋ช…์ฒด์—๊ฒŒ ์–ผ๋งˆ์”ฉ ๋ˆ์„ ์ค„ ์ˆ˜ ์žˆ๋Š”๊ฐ€? ๋˜, ์ƒ๋ช…์ฒด๋“ค์—๊ฒŒ ๋™์ผํ•˜๊ฒŒ ๋ถ„๋ฐฐํ•œ ํ›„ ๋‚จ๋Š” ๋ˆ์€ ์–ผ๋งˆ์ธ๊ฐ€? ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ์ฒซ์งธ ์ค„์—๋Š” ์ตœ๋ฐฑ์ค€ ์กฐ๊ต๊ฐ€ ๊ฐ€์ง„ ๋ˆ n๊ณผ ๋ฐ›์œผ๋Ÿฌ ์˜จ ์ƒ๋ช…์ฒด์˜ ์ˆ˜ m์ด ์ฃผ์–ด์ง€๋ฉฐ, ์ถœ๋ ฅ์‹œ ์ฒซ์งธ ์ค„์— ์ƒ๋ช…์ฒด ํ•˜๋‚˜์—๊ฒŒ ๋Œ์•„๊ฐ€๋Š” ๋ˆ์˜ ์–‘์„ ์ถœ๋ ฅํ•œ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‘ ๋ฒˆ์งธ ์ค„์—๋Š” 1์›์”ฉ ๋ถ„๋ฐฐํ•  ์ˆ˜.. 2021. 6. 17.
[๋ฐฑ์ค€][Node.js] 1267๋ฒˆ : ํ•ธ๋“œํฐ ์š”๊ธˆ Algorithm - ํ•ธ๋“œํฐ ์š”๊ธˆ - ๋ฌธ์ œ ๋™ํ˜ธ๋Š” ์ƒˆ์•…๋Œ€๋กœ T ํ†ต์‹ ์‚ฌ์˜ ์ƒˆ ํ•ธ๋“œํฐ ์˜ด๋จธ๋‚˜๋ฅผ ์ƒ€๋‹ค. ์ƒˆ์•…๋Œ€๋กœ T ํ†ต์‹ ์‚ฌ๋Š” ๋™ํ˜ธ์—๊ฒŒ ๋‹ค์Œ ๋‘ ๊ฐ€์ง€ ์š”๊ธˆ์ œ ์ค‘ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜๋ผ๊ณ  ํ–ˆ๋‹ค. 1. ์˜์‹ ์š”๊ธˆ์ œ 2. ๋ฏผ์‹ ์š”๊ธˆ์ œ ์˜์‹ ์š”๊ธˆ์ œ๋Š” 30์ดˆ๋งˆ๋‹ค 10์›์”ฉ ์ฒญ๊ตฌ๋œ๋‹ค. ์ด ๋ง์€ ๋งŒ์•ฝ 29์ดˆ ๋˜๋Š” ๊ทธ ๋ณด๋‹ค ์ ์€ ์‹œ๊ฐ„ ํ†ตํ™”๋ฅผ ํ–ˆ์œผ๋ฉด 10์›์ด ์ฒญ๊ตฌ๋œ๋‹ค. ๋งŒ์•ฝ 30์ดˆ๋ถ€ํ„ฐ 59์ดˆ ์‚ฌ์ด๋กœ ํ†ตํ™”๋ฅผ ํ–ˆ์œผ๋ฉด 20์›์ด ์ฒญ๊ตฌ๋œ๋‹ค. ๋ฏผ์‹ ์š”๊ธˆ์ œ๋Š” 60์ดˆ๋งˆ๋‹ค 15์›์”ฉ ์ฒญ๊ตฌ๋œ๋‹ค. ์ด ๋ง์€ ๋งŒ์•ฝ 59์ดˆ ๋˜๋Š” ๊ทธ ๋ณด๋‹ค ์ ์€ ์‹œ๊ฐ„ ํ†ตํ™”๋ฅผ ํ–ˆ์œผ๋ฉด 15์›์ด ์ฒญ๊ตฌ๋œ๋‹ค. ๋งŒ์•ฝ 60์ดˆ๋ถ€ํ„ฐ 119์ดˆ ์‚ฌ์ด๋กœ ํ†ตํ™”๋ฅผ ํ–ˆ์œผ๋ฉด 30์›์ด ์ฒญ๊ตฌ๋œ๋‹ค. ๋™ํ˜ธ๊ฐ€ ์ €๋ฒˆ ๋‹ฌ์— ์ƒˆ์•…๋Œ€๋กœ T ํ†ต์‹ ์‚ฌ๋ฅผ ์ด์šฉํ•  ๋•Œ ํ†ตํ™” ์‹œ๊ฐ„ ๋ชฉ๋ก์ด ์ฃผ์–ด์ง€๋ฉด ์–ด๋Š ์š”๊ธˆ์ œ๋ฅผ ์‚ฌ์šฉ ํ•˜๋Š” ๊ฒƒ์ด ์ €๋ ดํ•œ์ง€ .. 2021. 6. 16.
[๋ฐฑ์ค€][Node.js] 1260๋ฒˆ : DFS์™€ BFS ์ฒซ์งธ ์ค„์— DFS๋ฅผ ์ˆ˜ํ–‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ, ๊ทธ ๋‹ค์Œ ์ค„์—๋Š” BFS๋ฅผ ์ˆ˜ํ–‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. V๋ถ€ํ„ฐ ๋ฐฉ๋ฌธ๋œ ์ ์„ ์ˆœ์„œ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. Algorithm - DFS์™€ BFS - ๋ฌธ์ œ ๊ทธ๋ž˜ํ”„๋ฅผ DFS๋กœ ํƒ์ƒ‰ํ•œ ๊ฒฐ๊ณผ์™€ BFS๋กœ ํƒ์ƒ‰ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋‹จ, ๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ๋Š” ์ •์ ์ด ์—ฌ๋Ÿฌ ๊ฐœ์ธ ๊ฒฝ์šฐ์—๋Š” ์ •์  ๋ฒˆํ˜ธ๊ฐ€ ์ž‘์€ ๊ฒƒ์„ ๋จผ์ € ๋ฐฉ๋ฌธํ•˜๊ณ , ๋” ์ด์ƒ ๋ฐฉ๋ฌธํ•  ์ˆ˜ ์žˆ๋Š” ์ ์ด ์—†๋Š” ๊ฒฝ์šฐ ์ข…๋ฃŒํ•œ๋‹ค. ์ •์  ๋ฒˆํ˜ธ๋Š” 1๋ฒˆ๋ถ€ํ„ฐ N๋ฒˆ๊นŒ์ง€์ด๋‹ค. ์ฒซ์งธ ์ค„์— ์ •์ ์˜ ๊ฐœ์ˆ˜ N(1 ≤ N ≤ 1,000), ๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜ M(1 ≤ M ≤ 10,000), ํƒ์ƒ‰์„ ์‹œ์ž‘ํ•  ์ •์ ์˜ ๋ฒˆํ˜ธ V๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ M๊ฐœ์˜ ์ค„์—๋Š” ๊ฐ„์„ ์ด ์—ฐ๊ฒฐํ•˜๋Š” ๋‘ ์ •์ ์˜ ๋ฒˆํ˜ธ๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ์–ด๋–ค ๋‘ ์ •์  ์‚ฌ์ด์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ฐ„์„ ์ด ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค. ์ž…๋ ฅ์œผ๋กœ.. 2021. 6. 15.
[๋ฐฑ์ค€][Node.js] 1259๋ฒˆ : ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜ Algorithm - ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜ - ๋ฌธ์ œ ์–ด๋–ค ๋‹จ์–ด๋ฅผ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ฝ์–ด๋„ ๋˜‘๊ฐ™๋‹ค๋ฉด ๊ทธ ๋‹จ์–ด๋ฅผ ํŒฐ๋ฆฐ๋“œ๋กฌ์ด๋ผ๊ณ  ํ•œ๋‹ค. 'radar', 'sees'๋Š” ํŒฐ๋ฆฐ๋“œ๋กฌ์ด๋‹ค. ์ˆ˜๋„ ํŒฐ๋ฆฐ๋“œ๋กฌ์œผ๋กœ ์ทจ๊ธ‰ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ˆ˜์˜ ์ˆซ์ž๋“ค์„ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ฝ์–ด๋„ ๊ฐ™๋‹ค๋ฉด ๊ทธ ์ˆ˜๋Š” ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋‹ค. 121, 12421 ๋“ฑ์€ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋‹ค. 123, 1231์€ ๋’ค์—์„œ๋ถ€ํ„ฐ ์ฝ์œผ๋ฉด ๋‹ค๋ฅด๋ฏ€๋กœ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค. ๋˜ํ•œ 10๋„ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๊ฐ€ ์•„๋‹Œ๋ฐ, ์•ž์— ๋ฌด์˜๋ฏธํ•œ 0์ด ์˜ฌ ์ˆ˜ ์žˆ๋‹ค๋ฉด 010์ด ๋˜์–ด ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋กœ ์ทจ๊ธ‰ํ•  ์ˆ˜๋„ ์žˆ์ง€๋งŒ, ํŠน๋ณ„ํžˆ ์ด๋ฒˆ ๋ฌธ์ œ์—์„œ๋Š” ๋ฌด์˜๋ฏธํ•œ 0์ด ์•ž์— ์˜ฌ ์ˆ˜ ์—†๋‹ค๊ณ  ํ•˜์ž. ๊ฐ ์ค„๋งˆ๋‹ค ์ฃผ์–ด์ง„ ์ˆ˜๊ฐ€ ํŒฐ๋ฆฐ๋“œ๋กฌ์ˆ˜๋ฉด 'yes', ์•„๋‹ˆ๋ฉด 'no'๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ์‹œ ๋ฌธ์ œ ํ’€๊ธฐ let fs = require("fs"); let input = fs.. 2021. 6. 14.