์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

๐Ÿ˜บ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚  ๊ฒฝ์šฐ ๋ฐ˜๋Œ€๋ฐฉํ–ฅ์œผ๋กœ ์ด๋™ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๐Ÿ˜บ

์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ํ’€๋ฉด์„œ ๊ธฐ์–ตํ•ด๋‘๋ฉด ์ข‹์„๋งŒํ•œ ์ฝ”๋“œ๋ฅผ ๊ธฐ๋กํ•œ๋‹ค. ๐Ÿ˜บ ์ƒํ™ฉ ์„ค๋ช… ๊ณ ์–‘์ด๊ฐ€ ์ƒํ•˜์ขŒ์šฐ๋กœ L๋งŒํผ ์ด๋™ํ•  ๋•Œ ๋ฒ”์œ„ ๋ฐ–์œผ๋กœ ์ด๋™ํ•œ๋‹ค๋ฉด ์ด๋™๋ฐฉํ–ฅ์„ ๋ฐ˜๋Œ€๋กœ ๋ฐ”๊พผ ํ›„ ์ด๋™์„ ๊ณ„์† ์ง„ํ–‰ํ•œ๋‹ค. ๋งŒ์•ฝ L์˜ ๊ฐ’์ด 10์–ต์ผ ๋•Œ for๋ฌธ์„ 10์–ต ๋ฒˆ ๋Œ๋ ค ๊ณ ์–‘์ด๊ฐ€ ์ด๋™ํ•˜๊ฒŒ ๋˜๋Š” ์œ„์น˜๋ฅผ ์ •ํ•˜๋Š” ๊ฒƒ์€ ๋น„ํšจ์œจ์ ์ด๋ฉฐ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ๊ณ ์–‘์ด์˜ ์œ„์น˜๋ฅผ ๋ฐ˜๋ณต๋ฌธ์ด ์•„๋‹Œ ์‹์„ ์ด์šฉํ•ด์„œ ๊ตฌํ•ด๋ณด์ž. ๐Ÿ•น๏ธ ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ๐Ÿ”น ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ด๋™ํ•  ๋•Œ 4x6์˜ ํŒ์—์„œ ํ˜„์žฌ ๊ณ ์–‘์ด๋Š” (2, 2)์— ์œ„์น˜ํ•ด ์žˆ๋‹ค. ๊ณ ์–‘์ด๊ฐ€ ๋งŒ์•ฝ 3์นธ ์ด๋™ํ•˜๋ฉด ๋ฒ”์œ„์— ๋ฒ—์–ด๋‚˜์ง€ ์•Š๋Š”๋‹ค. ํ•˜์ง€๋งŒ ์˜ค๋ฅธ์ชฝ์œผ๋กœ 7์นธ ์ด๋™ํ•  ๋•Œ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๊ฒŒ ๋œ๋‹ค. ๋‹ค์Œ ์ด๋™ํ•˜๋ ค๋Š” ์นธ์ด ๋ฒ”์œ„์— ๋ฒ—์–ด๋‚œ๋‹ค๋ฉด ๋ฐฉํ–ฅ์„ ๋ฐ˜๋Œ€๋กœ ๋ฐ”๊ฟ” ์ด๋™ํ•˜๊ณ , ์ตœ์ข…์ ์œผ๋กœ (2, 1)์— ์œ„์น˜ํ•˜๊ฒŒ ๋œ๋‹ค. 12์นธ ์ด๋™ํ•˜๋ฉด ๋™์ผํ•œ..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

๐ŸŒ ๋‹ฌํŒฝ์ด ์ด๋™ ํšจ์œจ์ ์ธ ์ฝ”๋“œ ๐ŸŒ

๋‹ฌํŒฝ์ด ์ด๋™์„ ํšจ์œจ์ ์œผ๋กœ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๊ฐ€ ์žˆ์–ด์„œ ๊ธฐ๋กํ•œ๋‹ค. ์šฐ์„  ๊ฒฉ์ž์˜ ํ•œ ๋ณ€์€ ๋ฌด์กฐ๊ฑด ํ™€์ˆ˜๋‹ค. ์•ˆ -> ๋ฐ–์œผ๋กœ ์ด๋™ํ•˜๋Š” ๋ฐฉํ–ฅ๊ณผ ๋ฐ– -> ์•ˆ์œผ๋กœ ์ด๋™ํ•˜๋Š” ๋ฐฉํ–ฅ์„ ํ•œ ๋ฒˆ์— ์ €์žฅํ•˜๋Š” ๋กœ์ง์ด๋‹ค. ๊ทœ์น™ ์ฐพ๊ธฐ ๋‹ฌํŒฝ์ด ์ด๋™ํ•˜๋Š” ๊ทœ์น™์„ ์ฐพ์•„๋ณด๋ฉด ํ˜„์žฌ ๋ฐฉํ–ฅ์ด ๋งŒ์•ฝ ์œ„ ๋˜๋Š” ์•„๋ž˜์ผ ๋•Œ๋งˆ๋‹ค ์ด๋™ํ•˜๋Š” ํšŸ์ˆ˜๊ฐ€ 1์”ฉ ์ฆ๊ฐ€ํ•œ๋‹ค. ์•ˆ โž” ๋ฐ–์œผ๋กœ ์ด๋™ํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ๋ณด๋ฉด, โฌ†๏ธŽ โžก๏ธŽ ๋กœ ์ด๋™ํ•  ๋•Œ๋Š” 1, 3, 5 ... ์นธ์”ฉ ์ด๋™ํ•˜๊ณ , โฌ‡๏ธŽ โฌ…๏ธŽ ๋กœ ์ด๋™ํ•  ๋•Œ๋Š” 2, 4, 6 ... ์นธ์”ฉ ์ด๋™ํ•œ๋‹ค. (0, 0)์นธ์œผ๋กœ ํ–ฅํ•ด ๊ฐ€๋Š” ๋งˆ์ง€๋ง‰ โฌ†๏ธŽ๋Š” ์ง์ˆ˜ ์นธ๋งŒํผ ์ด๋™ํ•˜์ง€๋งŒ ์–ด์ฐจํ”ผ (0, 0)์—์„œ ๋๋‚˜๊ธฐ ๋•Œ๋ฌธ์— breakํ•˜๋ฉด ๋œ๋‹ค. ๋ฐ– โž” ์•ˆ์œผ๋กœ ์ด๋™ํ•˜๋Š” ๋‹ฌํŒฝ์ด ๋ชจ์–‘์€ ์œ„์™€ ๋ฐ˜๋Œ€๋กœ ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐฉํ–ฅ๋งŒ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋œ๋‹ค. ์ฝ”๋“œ public st..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

LCS (์ตœ์žฅ ๊ณตํ†ต ๋ถ€๋ถ„ ์ˆ˜์—ด)

์ฝ”ํ…Œ ๋ณด๋‹ค๊ฐ€ ๋‚˜์˜จ ๊ฒƒ์ด๊ธฐ์— ์ •๋ฆฌํ•œ๋‹ค... LCS (Longest Common Subsequence)๋Š” ์ฃผ์–ด์ง„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ˆ˜์—ด ์ค‘์—์„œ ๋ชจ๋‘์˜ ๋ถ€๋ถ„์ˆ˜์—ด์ด ๋˜๋Š” ์ˆ˜์—ด๋“ค ์ค‘ ๊ฐ€์žฅ ๊ธด ๊ฒƒ์„ ์ฐพ๋Š” ๊ฒƒ์ด๋‹ค. ์˜ˆ์‹œ๋ฅผ ๋ณด์ž๋ฉด, ACAYKP์˜ ๋ถ€๋ถ„์ˆ˜์—ด์€ {A}, {C}, {A}, {Y}, {K}, {P}, {A, C}, {A, A}, {A, Y}, ... {A, C, A, Y, K, P} ์ด๊ณ , CAPCAK์˜ ๋ถ€๋ถ„์ˆ˜์—ด์€ {C}, {A}, {P}, {C}, {A}, {K}, {C, A}, {C, P}, {C, C}, ... {C, A, P, C, A, K}์ด ์žˆ๋Š”๋ฐ ๊ฐ๊ฐ์˜ ๋ถ€๋ถ„์ˆ˜์—ด ์ค‘์—์„œ ์„œ๋กœ ๊ฐ™์€ ๋ถ€๋ถ„์ˆ˜์—ด์ด ์žˆ์„ ๊ฒƒ์ด๋‹ค. ๊ทธ์ค‘ ๊ฐ€์žฅ ๊ธด ๊ฒƒ์„ ์ฐพ์œผ๋ฉด ๋˜๋Š”๋ฐ ์œ„์˜ ์˜ˆ์‹œ์˜ ๋‹ต์€ ๊ธธ์ด๊ฐ€ 4์ธ {A, C, A, K} ์ด๋‹ค. ๋Œ€ํ‘œ์ ..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

Topological Sort (์œ„์ƒ์ •๋ ฌ)

์ˆœ์„œ๊ฐ€ ์ •ํ•ด์ ธ์žˆ๋Š” ์ž‘์—…์„ ์ฐจ๋ก€๋กœ ์ˆ˜ํ–‰ํ•ด์•ผํ•  ๋•Œ ๊ทธ ์ˆœ์„œ๋ฅผ ๊ฒฐ์ •ํ•ด์ฃผ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด๋ณด๋ฉด, ์œ„์™€ ๊ฐ™์€ ์ปค๋ฆฌํ˜๋Ÿผ์—์„œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ˆ˜๊ฐ•ํ•˜๊ณ ์ž ํ•˜๋ฉด ์„ ์ˆ˜๊ณผ๋ชฉ๋“ค์„ ์ˆ˜๊ฐ•ํ•œ ํ›„์— ๋“ค์–ด์•ผํ•œ๋‹ค๊ณ  ํ–ˆ์„ ๋•Œ, ์ด์‚ฐ์ˆ˜ํ•™ โ†’ Cํ”„๋กœ๊ทธ๋ž˜๋ฐ โ†’ ๊ฐ์ฒด์ง€ํ–ฅํ”„๋กœ๊ทธ๋ž˜๋ฐ โ†’ ์ž๋ฃŒ๊ตฌ์กฐ โ†’ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ˆœ์„œ๋กœ ์ˆ˜๊ฐ•์‹ ์ฒญ์„ ํ•˜๋ฉด ๋œ๋‹ค. ์ด ์™ธ์—๋„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ˆœ์„œ๊ฐ€ ์กด์žฌํ•  ์ˆ˜ ์žˆ๋‹ค. ์„ ํ›„ ๊ด€๊ณ„๊ฐ€ ๋ช…ํ™•ํ–ˆ์„ ๋•Œ ์ˆœ์„œ๋ฅผ ๊ฒฐ์ •ํ•˜์—ฌ ์ •๋ ฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ธ ๊ฒƒ์ด๋‹ค. ๐Ÿ”น ์œ„์ƒ ์ •๋ ฌ ํŠน์ง• ์‚ฌ์ดํด์ด ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š” ๋ฐฉํ–ฅ์„ฑ ๊ทธ๋ž˜ํ”„์—์„œ์˜ ์ •๋ ฌ ๐Ÿ‘‰ ์‚ฌ์ดํด์ด ์žˆ๋‹ค๋ฉด ์œ„์ƒ ์ •๋ ฌ ์ˆ˜ํ–‰ X (์‹œ์ž‘์ ์„ ์ฐพ์„ ์ˆ˜ ์—†์œผ๋ฏ€๋กœ) ํ ๋˜๋Š” ์Šคํƒ ์‚ฌ์šฉ ์ง„์ž…์ฐจ์ˆ˜ ๊ณ ๋ ค ๐Ÿ•น๏ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณผ์ • ์ง„์ž… ์ฐจ์ˆ˜๋Š” ์ •์ ์— ๋“ค์–ด์˜ค๋Š” ๊ฐ„์„  ์ˆ˜์ด๊ณ , ๋นจ๊ฐ„์ƒ‰ ์ˆซ์ž๋Š” ์ง„์ž…์ฐจ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ด๋‹ค. ์ง„์ž…์ฐจ์ˆ˜..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

Simulation - 2์ฐจ์› ๋‹ฌํŒฝ์ด ๋ฐฐ์—ด ๐ŸŒ

2์ฐจ์› ๋ฐฐ์—ด์—์„œ ๋‹ฌํŒฝ์ด๋กœ ์ด๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •๋ฆฌํ•œ๋‹ค. ๐ŸŒ ์‹œ์ž‘ํ•˜๋Š” ๊ณณ์—์„œ ์ƒํ•˜์ขŒ์šฐ ๋ฐฉํ–ฅ (๋ฐ˜์‹œ๊ณ„ ๋˜๋Š” ์‹œ๊ณ„๋ฐฉํ–ฅ)์— ๋”ฐ๋ผ ๋‹ฌํŒฝ์ด ๋ฐฐ์—ด์˜ ํ˜•ํƒœ๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค. ๋ฐฐ์—ด ์ค‘์•™ (N/2, N/2) ์—์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ ์ค‘์•™(N/2, N/2)์—์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผํ•˜๋ฏ€๋กœ N์ด ํ™€์ˆ˜์ด์–ด์•ผ ํ•œ๋‹ค. โ†, โ†“์ผ ๋•Œ๋Š” 1, 3, 5, 7 .... ๋งŒํผ ์ด๋™ํ•˜๋Š” ์นธ์ด ์ฆ๊ฐ€ํ•œ๋‹ค. โ†’, โ†‘์ผ ๋•Œ๋Š” 2, 4, 6, 8 .... ๋งŒํผ ์ด๋™ํ•˜๋Š” ์นธ์ด ์ฆ๊ฐ€ํ•œ๋‹ค. 2๋ฒˆ ๋ฐฉํ–ฅ์„ ๋ฐ”๊ฟ€ ๋•Œ๋งˆ๋‹ค ์ด๋™ํ•˜๋Š” ์นธ์„ ์ฆ๊ฐ€์‹œํ‚จ๋‹ค. ๐Ÿ‘‰ moveCnt++ ํ˜„์žฌ๋Š” ์ค‘์•™์—์„œ ์™ผ์ชฝ๋ฐฉํ–ฅ์œผ๋กœ ์‹œ์ž‘ํ•ด์„œ ๋ฐ˜์‹œ๊ณ„๋ฐฉํ–ฅ์œผ๋กœ ๋Œ๊ณ  ์žˆ์ง€๋งŒ, ์™ผ์ชฝ ์™ธ์— ์ƒ, ํ•˜, ์šฐ ๋ฐฉํ–ฅ์œผ๋กœ ์‹œ์ž‘ํ•ด์„œ ๋ฐ˜์‹œ๊ณ„ ๋˜๋Š” ์‹œ๊ณ„๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€๋Š” ๊ฒƒ๋„ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ์ง„ํ–‰ํ•˜๋ฉด ๋œ๋‹ค. ๋ฐฉํ–ฅ์„ ๋‘ ๊ฐœ์”ฉ ์ง๋งŒ ์ง€์–ด์ฃผ๋ฉด ๊ฐ€๋Šฅ ! impor..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

DP - Knapsack (๋ฐฐ๋‚ญ๋ฌธ์ œ)

https://www.acmicpc.net/problem/12865 12865๋ฒˆ: ํ‰๋ฒ”ํ•œ ๋ฐฐ๋‚ญ ์ฒซ ์ค„์— ๋ฌผํ’ˆ์˜ ์ˆ˜ N(1 โ‰ค N โ‰ค 100)๊ณผ ์ค€์„œ๊ฐ€ ๋ฒ„ํ‹ธ ์ˆ˜ ์žˆ๋Š” ๋ฌด๊ฒŒ K(1 โ‰ค K โ‰ค 100,000)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๋‘ ๋ฒˆ์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๊ฑฐ์ณ ๊ฐ ๋ฌผ๊ฑด์˜ ๋ฌด๊ฒŒ W(1 โ‰ค W โ‰ค 100,000)์™€ ํ•ด๋‹น ๋ฌผ๊ฑด์˜ ๊ฐ€์น˜ V(0 โ‰ค V โ‰ค 1,000) www.acmicpc.net ๐Ÿ•น๏ธ Knapsack ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณผ์ • DP ๋ฌธ์ œ ์ค‘ ํ•˜๋‚˜๋กœ, ๋ฐฐ๋‚ญ์˜ ํฌ๊ธฐ k์™€ n๊ฐœ์˜ ๋ฌผ๊ฑด์˜ ๋ฌด๊ฒŒ(w)์™€ ๊ฐ€์น˜(v)๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ฐ€๋ฐฉ์— ๋ฌผ๊ฑด์„ k์— ๋„˜์ง€ ์•Š๋„๋ก ๋„ฃ๊ณ  ์ตœ๋Œ€ ๊ฐ€์น˜์˜ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ex) ๋ฐฐ๋‚ญ์˜ ํฌ๊ธฐ๋Š” k์ด๊ณ , 5๊ฐœ์˜ ๋ฌผ๊ฑด์˜ ๋ฌด๊ฒŒ์™€ ๊ฐ€์น˜๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ตœ๋Œ€ ๊ฐ€์น˜์˜ ํ•ฉ์„ ๊ตฌํ•˜๊ธฐ ๋ฌผ๊ฑด 1 : w =..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

LIS (์ตœ์žฅ์ฆ๊ฐ€๋ถ€๋ถ„์ˆ˜์—ด)

LIS(Longest Increasing Subsequence)๋Š” ์›์†Œ๊ฐ€ n๊ฐœ์ธ ๋ฐฐ์—ด์—์„œ ์ผ๋ถ€ ์›์†Œ๋ฅผ ๊ณจ๋ผ๋‚ด์–ด ๋งŒ๋“  ๋ถ€๋ถ„ ์ˆ˜์—ด ์ค‘์—์„œ ๋ชจ๋“  ์›์†Œ๋“ค์ด ์ด์ „ ์›์†Œ๋ณด๋‹ค ํฌ๋‹ค๋Š” ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๊ณ  ๊ทธ ๊ธธ์ด๊ฐ€ ์ตœ๋Œ€์ธ ๋ถ€๋ถ„ ์ˆ˜์—ด์ด๋‹ค. ์˜ˆ์‹œ๋ฅผ ๋“ค์–ด๋ณด์ž. A = {10, 20, 10, 30, 20, 50}์ธ ์ˆ˜์—ด์—์„œ ์›์†Œ๊ฐ€ ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์€ {10, 20}, {20, 30, 50}, {10, 30, 50} ๋“ฑ์ด ์žˆ๋Š”๋ฐ, ๊ทธ ์ค‘ ๊ธธ์ด๊ฐ€ ์ตœ๋Œ€์ธ ๋ถ€๋ถ„ ์ˆ˜์—ด์€ ๊ธธ์ด๊ฐ€ 4์ธ {10, 20, 30, 50}์ด๋‹ค. ๋Œ€ํ‘œ ๋ฌธ์ œ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค. https://www.acmicpc.net/problem/11053 11053๋ฒˆ: ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด ์ˆ˜์—ด A๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ๊ฐ€์žฅ ๊ธด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„ ์ˆ˜์—ด์„ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค..

์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ

MST(์ตœ์†Œ์‹ ์žฅํŠธ๋ฆฌ) - ํฌ๋ฃจ์Šค์นผ & ํ”„๋ฆผ ์•Œ๊ณ ๋ฆฌ์ฆ˜

์ตœ์†Œ์‹ ์žฅํŠธ๋ฆฌ(MST / Minimum Spanning Tree)๋Š” ๋ฐฉํ–ฅ์„ฑ์ด ์—†๋Š” ๊ฐ€์ค‘ ๊ทธ๋ž˜ํ”„์—์„œ ๊ฐ„์„ ์˜ ๊ฐ€์ค‘์น˜์˜ ํ•ฉ์ด ์ตœ์†Œ์ธ ์‹ ์žฅ ํŠธ๋ฆฌ์ด๋‹ค. ๐Ÿ•น๏ธ ํฌ๋ฃจ์Šค์นผ ์•Œ๊ณ ๋ฆฌ์ฆ˜ & ํ”„๋ฆผ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ณผ์ • ๐Ÿ”น ํฌ๋ฃจ์Šค์นผ ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ๊ฐ„์„  ์ค‘์‹ฌ์œผ๋กœ ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ ๊ตฌํ•˜๊ธฐ (๊ฐ„์„ ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ ๋‹ค๋ฉด ํ”„๋ฆผ๋ณด๋‹ค ํšจ์œจ์  !) ๊ฐ„์„ ๋“ค์˜ ๊ฐ€์ค‘์น˜๋ฅผ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ ํ›„ ๊ฐ€์ค‘์น˜๊ฐ€ ๋‚ฎ์€ ๊ฐ„์„ ๋ถ€ํ„ฐ ์„ ํƒํ•œ๋‹ค. ์„ ํƒํ•œ ๊ฐ„์„ ์œผ๋กœ ์ธํ•ด ์‚ฌ์ดํด์ด ํ˜•์„ฑ๋œ๋‹ค๋ฉด ๋‹ค์Œ ๊ฐ„์„ ์œผ๋กœ ๋„˜์–ด๊ฐ€๊ณ , ์‚ฌ์ดํด์ด ํ˜•์„ฑ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ํ•ด๋‹น ๊ฐ„์„ ์„ ์„ ํƒํ•œ๋‹ค. โž” ์‚ฌ์ดํด์ด ํ˜•์„ฑ๋˜๋Š”์ง€ ํŒŒ์•…ํ•˜๊ธฐ ์œ„ํ•ด Union-Find ์—ฐ์‚ฐ์„ ์ง„ํ–‰ํ•œ๋‹ค. ์ •์ ์ด N๊ฐœ์ธ ๊ทธ๋ž˜ํ”„์ผ ๋•Œ, N-1๊ฐœ์˜ ๊ฐ„์„ ์„ ์„ ํƒํ–ˆ๋‹ค๋ฉด ๋ฐ˜๋ณต๋ฌธ์„ ์ข…๋ฃŒํ•œ๋‹ค. ๐Ÿ”น ํ”„๋ฆผ ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ์ •์  ์ค‘์‹ฌ์œผ๋กœ ์ตœ์†Œ ์‹ ์žฅ ํŠธ๋ฆฌ ๊ตฌํ•˜๊ธฐ (์ •์ ์˜ ๊ฐœ์ˆ˜๊ฐ€..

soogoori
'์•Œ๊ณ ๋ฆฌ์ฆ˜/๐Ÿ—‚๏ธ ์ •๋ฆฌ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก