P1216 [USACO1.5] [IOI1994]数字三角形 Number Triangles
P1216 [USACO1.5] [IOI1994]数字三角形 Number Triangles
一个DP题,不是贪心!!!
话不多说,上代码
1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<iomanip> 5 #include<algorithm> 6 using namespace std; 7 int n,a[1005][1005],b[1005][1005]; 8 int main(){ 9 cin>>n; 10 for(int i=1;i<=n;i++){ 11 for(int j=1;j<=i;j++){ 12 cin>>a[i][j]; 13 } 14 } 15 b[1][1]=a[1][1]; 16 for(int i=2;i<=n;i++){ 17 for(int j=1;j<=i;j++){ 18 b[i][j]=max(b[i-1][j]+a[i][j],b[i-1][j-1]+a[i][j]);//走到当前点的最大权值 19 } 20 }int maxx=0; 21 for(int i=1;i<=n;i++){ 22 maxx=max(maxx,b[n][i]); 23 }cout<<maxx; 24 return 0; 25 }
完