[JavaScript/section 8] 13 - ์ˆ˜์—ด ์ถ”์ธกํ•˜๊ธฐ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ 13 - ์ˆ˜์—ด ์ถ”์ธกํ•˜๊ธฐ ๊ฐ€์žฅ ์œ—์ค„์— 1๋ถ€ํ„ฐ N๊นŒ์ง€์˜ ์ˆซ์ž๊ฐ€ ํ•œ ๊ฐœ์”ฉ ์ ํ˜€ ์žˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ ์ฐจ๋ก€๋Œ€๋กœ ํŒŒ์Šค์นผ์˜ ์‚ผ๊ฐํ˜•์ฒ˜๋Ÿผ ์œ„์˜ ๋‘ ๊ฐœ๋ฅผ ๋”ํ•œ ๊ฐ’์ด ์ €์žฅ๋˜๊ฒŒ ๋œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด N์ด 4์ด๊ณ  ๊ฐ€์žฅ ์œ—์ค„์— 3 1 2 4๊ฐ€ ์žˆ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‚ผ๊ฐํ˜•์ด ๊ทธ๋ ค์ง„๋‹ค. N๊ณผ ๊ฐ€์žฅ ๋ฐ‘์— ์žˆ๋Š” ์ˆซ์ž๊ฐ€ ์ฃผ์–ด์ ธ ์žˆ์„ ๋•Œ ๊ฐ€์žฅ ์œ—์ค„์— ์žˆ๋Š” ์ˆซ์ž๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋‹จ, ๋‹ต์ด ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ๋‚˜์˜ค๋Š” ๊ฒฝ์šฐ์—๋Š” ์‚ฌ์ „์ˆœ์œผ๋กœ ๊ฐ€์žฅ ์•ž์— ์˜ค๋Š” ๊ฒƒ์„ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ์ž…๋ ฅ์˜ˆ์ œ 4 16 ์ถœ๋ ฅ์˜ˆ์ œ 3 1 2 4 ์ด๋ฒˆ ๋ฌธ์ œ๋ฅผ ํ’€๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋จผ์ € ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ทœ์น™์„ ์•Œ์•„์•ผํ•œ๋‹ค. ๋นจ๊ฐ„ ์ƒ‰๊ณผ ๊ฐ™์ด ์ˆœ์—ด์˜ ์ฒซ ๋ฒˆ์งธ ๋ถ€ํ„ฐ ๋งˆ์ง€๋ง‰ ์ˆซ์ž๊นŒ์ง€ ์ฐจ๋ก€๋Œ€๋กœ n-1C0, n-1C1, n-1C2, n-1C3๋ฒˆ ๋”ํ•ด์ง„ ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. ๊ฒฐ๋ก ์ ์œผ๋กœ ์ˆœ์—ด ๊ตฌ..
[JavaScript/section 8] 10 - ์ˆœ์—ด ๊ตฌํ•˜๊ธฐ
ยท
Algorithm/์ธํ”„๋Ÿฐ(inflearn)
๐Ÿ“Œ 10 - ์ˆœ์—ด ๊ตฌํ•˜๊ธฐ 10์ดํ•˜์˜ N๊ฐœ์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ด ์ค‘ M๊ฐœ๋ฅผ ๋ฝ‘์•„ ์ผ๋ ฌ๋กœ ๋‚˜์—ดํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ชจ๋‘ ์ถœ๋ ฅํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ์ค‘๋ณต์ˆœ์—ด ๊ตฌํ•˜๊ธฐ ๋ฌธ์ œ์™€ ๋‹ค๋ฅธ ์ ์€ ์ค‘๋ณต์—†์ด ์ˆœ์„œ์— ์ƒ๊ด€์žˆ๊ฒŒ ์„ ํƒํ•œ๋‹ค๋Š” ์ ์ด๋‹ค. ๋งŒ์•ฝ 3๊ฐœ์˜ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๊ณ  ์ด ์ค‘ 2๊ฐœ๋ฅผ ๋ฝ‘์•„ ์ผ๋ ฌ๋กœ ๋‚˜์—ดํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์ด 6๊ฐ€์ง€์ด๋‹ค. ๐Ÿ‘ ํ’€์ด ๋ฐฉ๋ฒ• ch ๋ฐฐ์—ด์€ tmp ๋ฐฐ์—ด์— ์–ด๋–ค ์ˆ˜๊ฐ€ ์„ ํƒ๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฐ์—ด์ด๋‹ค. (์ค‘๋ณต ๊ฒ€์ฆ) ch[i]์˜ ๊ฐ’์ด 0์ด๋ฉด ์„ ํƒ๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ์„ ํƒํ•ด๋„ ๋œ๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. ๋ฐ˜๋Œ€๋กœ ch[i]์˜ ๊ฐ’์ด 1์ด๋ฉด ์ด๋ฏธ ์„ ํƒ๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ๊ฑด๋„ˆ๋›ด๋‹ค. L(ํŠธ๋ฆฌ์˜ ๋ ˆ๋ฒจ)์ด m๊ณผ ๊ฐ™๋‹ค๋ฉด ํ•˜๋‚˜์˜ ๊ฒฝ์šฐ๊ฐ€ ์™„์„ฑ๋œ ๊ฒƒ์ด๋ฏ€๋กœ tmp ๋ฐฐ์—ด์„ ์–•์€ ๋ณต์‚ฌํ•˜์—ฌ answer ๋ฐฐ์—ด์— ์ถ”๊ฐ€ํ•œ๋‹ค. DFS ํ•จ์ˆ˜์˜ ํ˜ธ์ถœ์ด ๋..
_์„ฑํ˜ธ_
'์ˆœ์—ด' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก