๋์ ๊ณํ๋ฒ( Dynamic Programming) ๊ณผ ๋ถํ ์ ๋ณต(Divide Conquer)
๋์ ๊ณํ๋ฒ ( DP; Dynamic Programming) ? ์
๋ ฅ ํฌ๊ธฐ๊ฐ ์์ ๋ถ๋ถ ๋ฌธ์ ๋ค์ ํด๊ฒฐํ ํ, ํด๋น ๋ถ๋ถ ๋ฌธ์ ์ ํด๋ฅผ ํ์ฉํด ๋ณด๋ค ํฐ ํฌ๊ธฐ์ ๋ถ๋ถ ๋ฌธ์ ๋ฅผ ํด๊ฒฐ ์ํฅ์ ์ ๊ทผ๋ฒ Memoization ๊ธฐ๋ฒ : ํ๋ก๊ทธ๋จ ์คํ ์, ์ด์ ์ ๊ณ์ฐํ ๊ฐ์ ์ ์ฅํ์ฌ ๋ค์ ๊ณ์ฐํ์ง ์๋๋ก ํจ -> ์คํ์๋ ํฅ์ ๋ฌธ์ ๋ฅผ ์๊ฒ ์ชผ๊ฐค ๋, ๋ถ๋ถ ๋ฌธ์ ๋ ์ค๋ณต๋์ด ์ฌํ์ฉ๋จ -> ํผ๋ณด๋์น ์์ด ๋ถํ ์ ๋ณต (Divide and Conquer ) ? ๋ฌธ์ ๋ฅผ ๋๋ ์ ์์ ๋๊น์ง ๋๋์ด์, ๊ฐ๊ฐ ํ๋ฉด์ ๋ค์ ํฉ๋ณํ์ฌ ๋ฌธ์ ์ ๋ต์ ์ป๋ ์๊ณ ๋ฆฌ์ฆ ํํฅ์ ์ ๊ทผ๋ฒ (์ผ๋ฐ์ ์ผ๋ก ์ฌ๊ทํจ์๋ก ๊ตฌํ) ๋ฌธ์ ๋ฅผ ์๊ฒ ์กฐ๊ฐค ๋, ๋ถ๋ถ ๋ฌธ์ ๋ ์๋ก ์ค๋ณต๋์ง ์์ ๊ณตํต์ ๊ณผ ์ฐจ์ด์ ๊ณตํต์ : ๋ฌธ์ ๋ฅผ ์๊ฒ ์ชผ๊ฐ์, ๊ฐ์ฅ ์์ ๋จ์๋ก ๋ถํ ์ฐจ์ด์ ๋..