https://www.acmicpc.net/problem/9095
문제 설명
t개의 테스트 케이스가 주어진다.
각 테스트 케이스마다 n이 주어지는데 이때 1,2,3을 가지고 n을 만들 수 있는 경우의 수를 출력하면 된다
주요 로직
1. 점화식 찾기 (dp[i] = dp[i-1] + dp[i-2] + dp[i-3])
정답 코드
#include <bits/stdc++.h>
using namespace std;
int t,n;
int arr[15];
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL); cout.tie(NULL);
cin >> t;
arr[1] = 1, arr[2] = 2, arr[3] = 4;
for(int i=4; i<= 10; i++){
arr[i] = arr[i-1] + arr[i-2] + arr[i-3];
}
while(t--){
cin >> n;
cout << arr[n] << "\n";
}
return 0;
}
'PS' 카테고리의 다른 글
[백준] 13567번 로봇 (C++) (0) | 2025.01.22 |
---|---|
[백준] 2096번 내려가기 (C++) (0) | 2025.01.19 |
[백준] 10026번 적록색약 (C++) (0) | 2025.01.13 |
[백준] 4863번 섬의 개수 (C++) (0) | 2025.01.12 |
[백준] 2230번 수 고르기 (C++) (0) | 2025.01.05 |