๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

์ „์ฒด ๊ธ€92

์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•˜๋Š” ์ •๋ณด์™€ ํ•ต์‹ฌ ๋ถ€ํ’ˆ ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•˜๋Š” ์ •๋ณด: ๋ช…๋ น์–ด์™€ ๋ฐ์ดํ„ฐ์ปดํ“จํ„ฐ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์ง์ ‘ ์ดํ•ดํ•˜์ง€ ๋ชปํ•˜๊ณ , ๋ช…๋ น์–ด์™€ ๋ฐ์ดํ„ฐ ์ •๋ณด๋งŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ์†Œ์Šค ์ฝ”๋“œ๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ ์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ช…๋ น์–ด์˜ ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜๋œ ํ›„ ์‹คํ–‰๋œ๋‹ค.- ๋ช…๋ น์–ด: ์ˆ˜ํ–‰ํ•  ๋™์ž‘๊ณผ ์ˆ˜ํ–‰ํ•  ๋Œ€์ƒ์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.ex) ๋”ํ•˜๋ผ. 1๊ณผ 2๋ฅผ, ์ถœ๋ ฅํ•˜๋ผ "hello world"๋ฅผ- ๋ฐ์ดํ„ฐ: ์ˆซ์ž, ๋ฌธ์ž, ์ด๋ฏธ์ง€, ๋™์˜์ƒ๊ณผ ๊ฐ™์€ ์ •์ ์ธ ์ •๋ณด๋ฅผ ์˜๋ฏธํ•œ๋‹ค.์ฆ‰, ๋ฐ์ดํ„ฐ๋Š” ๋ช…๋ น์–ด์— ์ข…์†์ ์ธ ์ •๋ณด์ด๋ฉฐ, ๋ช…๋ น์˜ ๋Œ€์ƒ์„ ์˜๋ฏธํ•œ๋‹ค.โ€ป ์ปดํ“จํ„ฐ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ 0๊ณผ 1๋งŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ์™€ ๋ช…๋ น์–ด๋„ 0๊ณผ 1๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.์ปดํ“จํ„ฐ์˜ ํ•ต์‹ฌ ๋ถ€ํ’ˆ1. CPU(Central Processing Unit)์ปดํ“จํ„ฐ๊ฐ€ ์ดํ•ดํ•˜๋Š” ์ •๋ณด(๋ช…๋ น์–ด.. 2026. 4. 19.
[๋ฐฑ์ค€-35289] ๊ด„ํ˜ธ ๋ฌธ์ž์—ด ์นด๋“œ https://www.acmicpc.net/problem/35289 ๋ฌธ์ œABCDEF((()))())( ์—ฌ์„ฏ ์ข…๋ฅ˜์˜ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด๋กœ ์ด๋ฃจ์–ด์ง„ ์นด๋“œ๋ฅผ ์ž„์˜์˜ ์ˆœ์„œ๋กœ ๋‚˜์—ดํ•ด ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์˜ ์ตœ๋Œ€ ๊ธธ์ด ๊ตฌํ•˜๊ธฐ(๋ชจ๋“  ์นด๋“œ๋ฅผ ์‚ฌ์šฉํ•  ํ•„์š” X)๋‹จ, ์นด๋“œ๋Š” ๋’ค์ง‘๊ฑฐ๋‚˜ ํšŒ์ „ํ•  ์ˆ˜ ์—†๊ณ , ์นด๋“œ์— ์ ํžŒ ๋ฌธ์ž์—ด์„ ๋ถ„๋ฆฌํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œ ํ’€์ด ๋ฐฉ์‹์ฒ˜์Œ์— ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์ด์–ด์„œ ์Šคํƒ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ด์šฉํ•˜๋Š” ๋ฐฉ์‹์„ ๊ณ ๋ฏผํ•จ. ์Šคํƒ์„ ์ด์šฉํ•ด์„œ ํ‘ธ๋Š” ๋ฐฉ๋ฒ•์˜ ์•„์ด๋””์–ด๊ฐ€ ๋– ์˜ค๋ฅด์ง€ ์•Š์•„ ์กฐ๊ฑด ๋ถ„๊ธฐ๋ฅผ ์ด์šฉํ•ด ๋ฌธ์ œ๋ฅผ ์ ‘๊ทผํ•จ. E ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์ธ ()๋Š” ๋‹จ๋…์œผ๋กœ ์‚ฌ์šฉํ•ด๋„ ์˜ฌ๋ฐ”๋ฅธ ๋ฌธ์ž์—ด์ด๋ฏ€๋กœ ๋ณ„๋„๋กœ ์„ธ์–ด์คŒF ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์ธ )(๋Š” ์œ„์น˜๊ฐ€ ๊ฐ€์šด๋ฐ์— ๋ฐฐ์น˜๋˜์–ด์•ผ ํ•จ(ex: AFC, BFC, BFFFFC ๋“ฑ). ๊ฐ€์žฅ ๊ธด ์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด์„ ๋งŒ๋“ค ์ˆ˜ .. 2026. 4. 14.
์ตœ๋‹จ ๊ฒฝ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜(๋‹ค์ต์ŠคํŠธ๋ผ, ํ”Œ๋กœ์ด๋“œ-์›Œ์…œ) ์ตœ๋‹จ ๊ฒฝ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ฐ€์žฅ ์งง์€ ๊ฒฝ๋กœ๋ฅผ ์ฐพ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜๊ฐ ์ง€์ ์€ ๊ทธ๋ž˜ํ”„์—์„œ ๋…ธ๋“œ๋กœ ํ‘œํ˜„์ง€์  ๊ฐ„ ์—ฐ๊ฒฐ๋œ ๋„๋กœ๋Š” ๊ทธ๋ž˜ํ”„์—์„œ ๊ฐ„์„ ์œผ๋กœ ํ‘œํ˜„๋‹ค์–‘ํ•œ ๋ฌธ์ œ ์ƒํ™ฉํ•œ ์ง€์ ์—์„œ ๋‹ค๋ฅธ ํ•œ ์ง€์ ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ → BFS ์ด์šฉํ•œ ์ง€์ ์—์„œ ๋‹ค๋ฅธ ๋ชจ๋“  ์ง€์ ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ → ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜๋ชจ๋“  ์ง€์ ์—์„œ ๋‹ค๋ฅธ ๋ชจ๋“  ์ง€์ ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฒฝ๋กœ → ํ”Œ๋กœ์ด๋“œ ์›Œ์…œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ตœ๋‹จ ๊ฒฝ๋กœ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋™์ž‘ ๊ณผ์ •์ตœ๋‹จ ๊ฑฐ๋ฆฌ ํ…Œ์ด๋ธ”์€ ๊ฐ ๋…ธ๋“œ์— ๋Œ€ํ•œ ํ˜„์žฌ๊นŒ์ง€์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ์ •๋ณด๋ฅผ ๊ฐ€์ง„๋‹ค.์ฒ˜๋ฆฌ ๊ณผ์ •์—์„œ ๋” ์งง์€ ๊ฒฝ๋กœ๋ฅผ ์ฐพ์œผ๋ฉด ๋” ์งง์€ ๊ฒฝ๋กœ๋กœ ๊ฐ’์„ ๊ฐฑ์‹  ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜ํŠน์ •ํ•œ ๋…ธ๋“œ์—์„œ ์ถœ๋ฐœํ•ด์„œ ๋‹ค๋ฅธ ๋ชจ๋“  ๋…ธ๋“œ๋กœ ๊ฐ€๋Š” ์ตœ๋‹จ ๊ฒฝ๋กœ ๊ณ„์‚ฐ๋‹ค์ต์ŠคํŠธ๋ผ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์Œ์˜ ๊ฐ„์„ ์ด ์—†์„ ๋•Œ ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘- ํ˜„์‹ค ์„ธ๊ณ„์˜ ๊ฐ„์„ ์€ ์Œ์˜ ๊ฐ„์„ ์œผ๋กœ ํ‘œํ˜„X- ์Œ์˜ ๊ฐ„์„ ์ด ํฌํ•จ๋  ๋•Œ๋Š” .. 2026. 4. 5.
๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜, BFS(Breadth First Search) BFS(๋„ˆ๋น„ ์šฐ์„  ํƒ์ƒ‰)๊ทธ๋ž˜ํ”„ ํ˜น์€ ํŠธ๋ฆฌ์—์„œ ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ํ•œ ๋ฒˆ์”ฉ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ๋ณธ์ ์ธ ๋ฐฉ๋ฒ•์™„์ „ ํƒ์ƒ‰์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜(๋ชจ๋“  ๊ฐ„์„ ์˜ ๊ธธ์ด๊ฐ€ ๋™์ผํ•  ๋•Œ) ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ํƒ์ƒ‰ํ•˜๊ธฐ ์œ„ํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํƒ์ƒ‰์ด๋ž€ ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ ์ค‘์—์„œ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ๋Š” ๊ณผ์ •์„ ์˜๋ฏธ๋Œ€ํ‘œ์ ์ธ ๊ทธ๋ž˜ํ”„ ํƒ์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ค‘ ํ•˜๋‚˜ํ ์ž๋ฃŒ ๊ตฌ์กฐ ์ด์šฉ(DFS-์Šคํƒ, BFS-ํ) ํ ๊ตฌํ˜„class Queue { constructor() { this.queue = {}; this.headIndex = 0; this.tailIndex = 0; } enqueue = (value) => { this.queue[this.tailIndex++] = val.. 2026. 4. 4.