[백준]15989 1, 2, 3 더하기 4
Contents
https://www.acmicpc.net/problem/15989
풀이:
a[n][0] : 3을 포함하지 않고, 2를 1개 이상 포함한 n 을 만드는 경우의 수
a[n][1] : 3을 1개 이상 포함한 n을 만드는 경우의 수
a[n][0] = a[n - 2][0] + 1
-> 2를 1개 이상 포함하여 n - 2 를 만드는 경우의 수에 2를 하나씩 더 붙힌 것
+ 1로만 이루어진 수에 2를 하나 붙힌 것)
a[n][1] = a[n - 3][1] + a[n - 3][0] + 1
-> 3을 3개 이상 포함하여 n - 3 을 만드는 경우의 수에 3을 하나씩 붙힌 것
+ 2를 1개 이상 포함하여 n - 3 을 만드는 경우의 수에 3를 하나씩 더 붙힌 것
+ 1로만 이루어진 수에 2를 하나 붙힌 것)
a[n][0] + a[n][1] + 1 (1로만 이루어진 경우의 수를 위해 1을 더해준다.)
코드:
사용언어 : c++
|
|