๋ชฉ๋กDivide And Conquer (1)

YS's develop story

๋™์  ๊ณ„ํš๋ฒ•๊ณผ ๋ถ„ํ•  ์ •๋ณต ์ •๋ฆฌ

๐Ÿ‘ฉ‍๐Ÿ’ป ๋™์  ๊ณ„ํš๋ฒ•๊ณผ ๋ถ„ํ•  ์ •๋ณต ์ •๋ฆฌ with Python ๐Ÿฅ˜ ๋™์  ๊ณ„ํš๋ฒ• (Dynamic Programming) ๋™์  ๊ณ„ํš๋ฒ•, Dynamic Programming์ด๋ž€? ์ž…๋ ฅ ํฌ๊ธฐ๊ฐ€ ์ž‘์€ ๋ถ€๋ถ„ ๋ฌธ์ œ๋“ค์„ ํ•ด๊ฒฐํ•œ ํ›„, ํ•ด๋‹น ๋ถ€๋ถ„ ๋ฌธ์ œ์˜ ํ•ด๋ฅผ ํ™œ์šฉํ•ด์„œ, ํฐ ๋ถ€๋ถ„ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์ตœ์ข…์ ์œผ๋กœ ์ „์ฒด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ธฐ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ƒํ–ฅ์‹ ์ ‘๊ทผ๋ฒ•์œผ๋กœ ๊ฐ€์žฅ ์ตœํ•˜์œ„ ํ•ด๋‹ต์„ ๊ตฌํ•œ ํ›„ ์ด๋ฅผ ์ €์žฅํ•˜๊ณ , ํ•ด๋‹น ๊ฒฐ๊ด๊ฐ’์„ ์ด์šฉํ•ด ์ƒ์œ„ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๊ฐ€๋Š” ๋ฐฉ์‹์„ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. Memoization ๊ธฐ๋ฒ•์„ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. Memoization (๋ฉ”๋ชจ์ด์ œ์ด์…˜) : ํ”„๋กœ๊ทธ๋žจ ์‹คํ–‰ ์‹œ ์ด์ „์— ๊ณ„์‚ฐํ•œ ๊ฐ’์„ ์ €์žฅํ•˜๋ฉฐ, ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜์ง€ ์•Š๋„๋ก ํ•˜์—ฌ ์ „์ฒด ์‹คํ–‰ ์†๋„๋ฅผ ๋น ๋ฅด๊ฒŒ ํ•˜๋Š” ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ๋ฌธ์ œ๋ฅผ ์ž˜๊ฒŒ ์ชผ๊ฐค ๋•Œ, ๋ถ€๋ถ„ ๋ฌธ์ œ๋Š” ์ค‘๋ณต๋˜์–ด ์žฌํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค. ..

Algorithm 2021. 7. 30. 09:48