hdu2041超級樓梯(DP)
阿新 • • 發佈:2018-10-05
stdio.h math while div code math.h color bsp 第一個
總是把DP和搜索搞混……很苦惱,有沒有什麽標誌性區別呀
這道題是個DP,當前臺階的走法=前一步的兩種走法之和(前一步上一個臺階/上兩個臺階);(他可以走一步到這,也可以走兩步到這)
最初站在第一個臺階上。
1 #include<iostream> 2 #include<stdio.h> 3 #include<string.h> 4 #include<algorithm> 5 #include<math.h> 6 using namespace std; 7 8 int main() 9 { 10 int n,m,a[40]; 11 while(cin>>m) 12 { 13 while(m--) 14 { 15 cin>>n; 16 a[1]=0;a[2]=1;a[3]=2; 17 for(int i = 4; i <= n; i++) 18 { 19 a[i] = a[i-1] + a[i-2]; 20 } 21 cout<<a[n]<<endl;22 } 23 } 24 return 0; 25 }
hdu2041超級樓梯(DP)