01串

 1 #include <cstdio>
 2 using namespace std;
 3 
 4 int dp[45];
 5 int main()
 6 {
 7     int n,m;
 8     dp[2]=3;
 9     dp[1]=2;
10     for(int i=3;i<41;i++)
11         dp[i]=dp[i-1]+dp[i-2];
12     scanf("%d",&n);
13     while(n--)
14     {
15         scanf("%d",&m);
16         printf("%d
",dp[m]);
17     }
18     return 0;
19 }
View Code

刚开始接触动态规划,感觉就是在算完上一层数据之后在完成下一层时用到上一层的结果,并在基础上规划吧,这是我的理解吧,刚学吧! 

这题用了解答树,找到了规律。

原文地址:https://www.cnblogs.com/WDKER/p/5431685.html