반응형
<코드>
#include<iostream>
#include<algorithm>
using namespace std;
int T, n, dp[12];
int main()
{
dp[1] = 1;
dp[2] = 2;
dp[3] = 4;
cin >> T;
while (T--)
{
cin >> n;
for (int i = 4; i <= n; i++)
{
dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3];
}
cout << dp[n] << '\n';
}
}
풀이 방법
dp[i] = dp[i - 1] + dp[i - 2] + dp[i - 3];
5를 만드는 방법 = 1과 4를 만드는 방법 + 2와 3을 만드는 방법+ 3과 2를 만드는 방법
1+1+1+1+1
1+1+1+2
1+1+2+1
1+1+3
1+2+1+1
1+2+2
1+3+1
2+1+1+1
2+1+2
2+2+1
2+3
3+1+1
3+2
반응형
'🧩PS > 🥈Nomal' 카테고리의 다른 글
[C/C++] 백준 1976번 - 여행 가자 (BFS) (0) | 2021.02.07 |
---|---|
[C/C++] 백준 10845번 - 큐 (0) | 2021.02.06 |
[C/C++] 백준 2193번 - 이친수 (DP) (0) | 2021.02.06 |
[C/C++] 백준 11726번 - 2×n 타일링 (DP) (0) | 2021.02.06 |
[C/C++] 백준 4386번 - 별자리 만들기 (MST, 크루스칼) (0) | 2021.02.05 |