๋์ ํ ๋ชปํ๊ฒ ์ด์ ๋ต์ ๋ณด์๋๋ฐ d[0]๊ฐ ์ด๊ธฐํ๋ ๋ฌด์กฐ๊ฑด 1๋ก ํด์ค์ผ ํ๋ค.
1X2, 2X1 ํ์ผ์ ์ฑ์ฐ๋ ๊ฑฐ๋๊น 3X0๋ฒฝ์ ๋น์ฐํ 0์ด์ง! ๋ผ๊ณ ์๊ฐํ๋ฉด์ ํ์๋๋ฐ ์ค๋ต..
์ ๋ต์ฝ๋๋ฅผ ๋ณด๋ 3X0 ๊ฒฝ์ฐ์๋ ๊ผญ ํ๋๋ฅผ ์ฑ์์ค์ผ ํด์ d[0]=1 ์ด์๋ค.
์ ? ? ?? ์์์ ์ผ๋ก 0์นธ์ด๋ฉด ํ์ผ ๋ฃ์ ์นธ์ด ์์ ์๋ค๋๊ฑด๋ฐ ์ ๊ผญ ํ๋๋ฅผ ์ฑ์์ค์ผ ํ๋๊ฑธ๊น?
(์ด์ ๋ฅผ ์์๋ ๋ถ์ ๋ถ๋ ์ ์๊ฒ๋ ์๋ ค์ฃผ์ธ์..๋ณต๋ฐ์ผ์ค๊ฒ๋๋คT_T)
๋ฌธ์
๋ฌธ์
3×N ํฌ๊ธฐ์ ๋ฒฝ์ 2×1, 1×2 ํฌ๊ธฐ์ ํ์ผ๋ก ์ฑ์ฐ๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํด๋ณด์.
์ ๋ ฅ
์ฒซ์งธ ์ค์ N(1 ≤ N ≤ 30)์ด ์ฃผ์ด์ง๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ๊ฒฝ์ฐ์ ์๋ฅผ ์ถ๋ ฅํ๋ค.
ํ์ด๊ณผ์
1.๊ท์น
- dp์ด๋ฏ๋ก ์ ํ์๊ณผ ๋ฉ๋ชจ์ด์ ์ด์ ์ ์ด์ฉํฉ๋๋ค.
- ๋ฒฝ์ ํ์ผ๋ก ๊ฝ ์ฐฐ์ ์๋ ๊ฒฝ์ฐ๋ง ์๊ฐํฉ๋๋ค.
2.์์
์ ํ์์ ์๊ฐํด๋ด ๋๋ค.
๋จผ์ , 1X2, 2X1ํ์ผ์ ์ง์๋ฒฝ์๋ง ๋ฃ์ ์ ์์ผ๋ฏ๋ก 1,3,5..๊ฐ์ ํ์์ ๊ฒฝ์ฐ๋ ์ ์ธํฉ๋๋ค.
์ง์๋ฒฝ์์๋ง ๋ฐ๋ณต๋๋ ๊ท์น์ ์ฐพ์๋ด ๋๋ค.
3X2์ ๊ฒฝ์ฐ ํ์ผ์ ์ฑ์ธ ์ ์๋ ๋ฐฉ๋ฒ์ 112,211,222๋ก 3๊ฐ์ง ์ ๋๋ค.
3X4 ๋ถํฐ๋ ๋์ผ์ด์ค๋ก ๋๋ ์ ์๊ฐํด์ผ ํ๋๋ฐ, ์ฒซ๋ฒ์งธ์ผ์ด์ค๋ 3X2๋ฅผ ๊ทธ๋๋ก ๋ฐ์ฉ ๋ถ์ฌ์ ํํํ ์ ์๋ ๊ฒฝ์ฐ์ ๋๋ค.
์ค์ ๋ก ๋ง๋ค์ด๋ณด๋ฉด 112,211,222 ๋ชจ๋ 3๊ฐ์ง์ฉ ํ์๊ฐ ๋์ด๋๋ฏ๋ก
์ฒซ๋ฒ์งธ์ผ์ด์ค์ ์ ํ์์ d[i] = d[i]+d[i-2]*3 ์ ๋๋ค.
๋๋ฒ์งธ๋ 3X2๋ก ํํํ ์ ์๋ ์๋ก์ด ์ผ์ด์ค ์ ๋๋ค.
๋ฐ๋ผ์ ์ ํ์์ d[i] = d[i] + d[i-2]*3 + d[i-4]*2๋ก ์๊ฐํ๊ธฐ ์ฝ์ง๋ง, ๋ง์ 3X6์ ๊ฒฝ์ฐ๋ ์๊ฐํด๋ณด์์ผ ํฉ๋๋ค.
3X6์ ์ฒซ๋ฒ์งธ์ผ์ด์ค๋ 3X4์ ๋ง์ฐฌ๊ฐ์ง๋ก d[i-2]*3 ์ง๋ง, ๋๋ฒ์งธ์ผ์ด์ค๋ 3X4์ ๋ฌ๋ฆฌ d[i-4]*2๊ฐ ์๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
๊ทธ๋ฆผ์ผ๋ก ์ดํด๋ณด๋ฉด, ๋๋ฒ์งธ์ผ์ด์ค ๊ฐ์ d[i-4]*2 + d[i-6]*2(์ฆ, d[2]*2 + d[0]*2 = 3*2 + 1*2 = 6 + 2 = 8) ์ธ ๊ฒ์ ์ ์ ์์ต๋๋ค.
๊ฒฐ๊ตญ d[i]๋ d[i-2]*3 ๊ณผ,
d[(i-4)-=2]*2 ๊ฐ์ ๊ณ์ ๋ํด์ฃผ๋ฉด ๋ต์ด ๋์ค๊ฒ ๋ฉ๋๋ค.
๋ฐ๋ผ์ ์ ํ์์
d[i] = d[i] + d[i-2]*3 + d[k]*2(k=i-4, k๋ 0์ด ๋ ๋๊น์ง -=2) ์ ๋๋ค.
3.์ฝ๋
*d[0]๋ ๊ผญ 1๋ก ์ด๊ธฐํ ํด์ค์ผ ์ ๋๋ก ๋ ๋ต์ด ๋์ต๋๋ค.*
'๐ค PS(Problem Solving) > ๋ฐฑ์ค(BOJ)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค] 2225๋ฒ-ํฉ๋ถํด (0) | 2019.07.21 |
---|---|
[๋ฐฑ์ค] 9461๋ฒ-ํ๋๋ฐ ์์ด (0) | 2019.07.21 |
[๋ฐฑ์ค] 1699๋ฒ-์ ๊ณฑ์์ ํฉ (0) | 2019.07.19 |
[๋ฐฑ์ค] 2579๋ฒ - ๊ณ๋จ ์ค๋ฅด๊ธฐ (0) | 2019.07.19 |
[๋ฐฑ์ค] 1912๋ฒ - ์ฐ์ํฉ (0) | 2019.07.17 |