Tiling(3n)
Last updated
Last updated
3xn ํฌ๊ธฐ์ ๋ฒฝ์ 1x2, 2x1 ํ์ผ๋ก ์ฑ์ธ ์ ์๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์
DP๋ ์์ ์๋ฌธ์ ๋ก๋ถํฐ ์ ํ์์ ๋์ถํด์ ์ ์ฒด๋ฌธ์ (D[n]) ์ต์ข ์ ์ธ ํด๋ฅผ ๊ตฌํ๋ ๊ฒ์ด๋ค.
์ด ๋ฌธ์ ๋ 2xn ํ์ผ๋ง ๋ฌธ์ ์ ๋ง์ฐฌ๊ฐ์ง๋ก, ๋ง์ง๋ง์ ์ฌ ์ ์๋ ํ์ผ์ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํด๋ณด๋ฉด ๋ค์๊ณผ ๊ฐ์ 3๊ฐ์ง ๊ฒฝ์ฐ๊ฐ ์๋ค.
d[n] = d[n-2] * 3 ์ ๋์ถํด๋ผ ์ ์๋ค.
ํ์ง๋ง ๋ค์๊ณผ ๊ฐ์ ์์ธ๋ค์ ์๊ฐํ ์ ์๋ค.
n์ด 4์ด์๋ถํฐ๋ ๊ฐ๊ฐ์ ๊ฒฝ์ฐ์ ๋ํด ๊ฒฝ์ฐ์ ์๊ฐ 2๊ฐ์ง์ฉ ๋ ๋์ค๋ ๊ฒ์ ์ ์ ์๋ค! d[4] = 3x4 ๊ฒฝ์ฐ์ ์๋ฅผ ๋๋ต ๊ทธ๋ ค๋ณด๋ฉด ๊ฐ๊ฐ์ ๊ฒฝ์ฐ์ ๋ ์ ์๋ ์ํ๊ฐ ๋ฐ์ ๋ 2๊ฐ์ง์ ๊ฒฝ์ฐ๊ฐ ๋์ฌ ์ ์๋ค!
n์ด ์ง์์ ๊ฒฝ์ฐ๋ง ํด๋น๋๋ ๊ฒ์ ์ ์ ์๋ค!
1,2๋ฅผ ์กฐํฉํด์ ๋ณด๋ฉด d[n] = d[n-2]*3 + d[n-4]*2 + d[n-6]*2 + ... n์ 4๋ถํฐ 2๊ฐ์ง์ฉ ์ถ๊ฐ๋๋ค๋ ๊ฒ์ ์ ํ์์ผ๋ก ํํํ ๋ ์๋ฅผ ๋ค์ด n์ด 4๋ผ๋ฉด d[2] = 3x2 ๋ฒฝ ์ฑ์ฐ๋ ํ์ผ ๊ฒฝ์ฐ์ ์ = 3
d[4] = d[2]*3 + d[0]*2 d[6] = d[4]*3 + d[2]* + d[0]+*2 ...
3n ๋ถํฐ๋ ์ง์ ๊ทธ๋ฆฌ๋ ๊ฒ์ ๊ถ์ฅํ์ง ์๊ณ , ์ด๋ฌํ ๋ฌธ์ ์ ํ์ด๋ฐฉ๋ฒ์ ์ฐธ๊ณ ํ๊ณ ๋์ด๊ฐ๋๋ก ํ๋ค.