우선 c++ 로 해서 배열에 변수로 크기를 지정하는게 안된다
원래는 처음에 Testcase의 갯수를 받고 그만큼 입력을 받은후
나중에 출력해주려고 했었음
->그래서 정답 배열을 따로 만들어 testcase의 갯수만큼 크기를 지정해 나중에 출력해주려 했으나
그건 자바에서 하는걸로..c는 되나..
=>동적할당 사용해도 되긴함
ex)cin>>test__num;
int *num=new int[test_num];
나중에 delete []num;
//우선은 형식을 그냥 입력하자마자 출력하는 걸로
#include
using std::cout;
using std::endl;
using std::cin;
int main(void) {
int test_num = 0;
int i;
int num;
cin >> test_num;
while (test_num > 0) {
int dp[15] = {0};
dp[1] = 1,dp[2]=2,dp[3]=4;
cin >> num;
for (i = 4;i <=num;i++)
dp[i] = dp[i - 3] + dp[i - 2] + dp[i - 1];
cout << dp[num] << endl;
test_num--;
}
return 0;
}
//tip
우선 처음부분 1,2,3은 정답을 알아내기가 쉽고 구하고 쓰는게 더 편할것 같아
아예 초기화를 해주고 시작했다.
Dynamic은 dp[i] = dp[i - 3] + dp[i - 2] + dp[i - 1]; 이부분만 제대로 알면 될듯
계속 해보면서 감을 익히는 수밖에..
'코테 준비-문제풀기' 카테고리의 다른 글
백준 7785 (0) | 2019.09.18 |
---|---|
2193 Dynamic -이친수 구하기 (0) | 2019.06.02 |
1260 DFS BFS (1) | 2019.05.29 |
11399 greedy (0) | 2019.05.23 |
백준 dynamic programming 7579 번 (0) | 2019.05.12 |