hld
[Algorithm | Python] HeavyLight Decomposition (HLD)
ใ ในใท ์ฌ๋ ค์ผ์ง, ์ฌ๋ ค์ผ์ง ํ๊ณ ํ๋ ๊ฑธ ์ด์ ์ผ ์ ๋ฆฌ. ์์ง ์์ฑ๋์ง ์์๋ค HeavyLight Decomposition (HLD)๋ ํธ๋ฆฌ์์์ ์ฟผ๋ฆฌ๋ฅผ ํจ์จ์ ์ผ๋ก ์ํํ๋๋ก ํ๋ ํ ํฌ๋์ด๋ค. ๋ค์๊ณผ ๊ฐ์ ๋ ์ฟผ๋ฆฌ๊ฐ ์๋ค. 1. ํธ๋ฆฌ์ ์ ์ $u$ ์์ $v$ ๋ก ๊ฐ๋ ๊ฒฝ๋ก ์ค ๊ฐ์ฅ ํฐ ๊ฐ์ค์น๋ฅผ ๊ฐ์ง ์ ์ ์ ์ฐพ๋ ์ฟผ๋ฆฌ 2. ์ ์ ์ ๊ฐ์ค์น๋ฅผ ๋ฐ๊พธ๋ ์ฟผ๋ฆฌ ๋ฐฐ์ด์์ ์ ์ฟผ๋ฆฌ๋ค์ ์ฒ๋ฆฌํ๋ ๊ฒ์ ๊ฐ๋จํ๋ค. ์ธ๊ทธ๋จผํธ ํธ๋ฆฌ๋ ํ์ ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉด $O(QlogN)$์ ํด๊ฒฐํ ์ ์๋ค. ํ์ง๋ง ์ด๋ ๋ฐฐ์ด์ด ์ ํ์ธ ์ ์ ํ์ฉํ ํ์ด๋ฒ์ด๊ธฐ์, ๋น์ ํ ์๋ฃ๊ตฌ์กฐ์ธ ํธ๋ฆฌ์๋ ์ ์ฉํ ์ ์๋ค. ํธ๋ฆฌ๋ฅผ ์ ๋นํ ๋๋ ์, ๋๋ ๊ตฌ๊ฐ์ ์ธ๊ทธ๋จผํธ ํธ๋ฆฌ๋ก ๊ด๋ฆฌํ๋ฉด ์ด๋จ๊น? ๋ผ๋ ๋ฐ์์์ ๋์จ ๊ฒ ์ค๋ ๋ค๋ฃฐ HeavyLight Decompos..