标签:
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 4912 Accepted Submission(s): 2651
1 #include <cstdio> 2 #include <cstring> 3 #include <algorithm> 4 #include <iostream> 5 #include <vector> 6 #include <queue> 7 #include <cmath> 8 #include <set> 9 using namespace std; 10 11 #define N 105 12 13 int max(int x,int y){return x>y?x:y;} 14 int min(int x,int y){return x<y?x:y;} 15 int abs(int x,int y){return x<0?-x:x;} 16 17 18 int a[N][N]; 19 int n, m; 20 int dp[N]; 21 22 main() 23 { 24 int i, j, k; 25 while(scanf("%d %d",&n,&m)==2){ 26 if(!n&&!m) break; 27 for(i=1;i<=n;i++){ 28 for(j=1;j<=m;j++) 29 scanf("%d",&a[i][j]); 30 } 31 memset(dp,0,sizeof(dp)); 32 for(i=1;i<=n;i++){ 33 for(j=m;j>=0;j--){ 34 for(k=1;k<=j;k++){ 35 dp[j]=max(dp[j],dp[j-k]+a[i][k]); 36 } 37 } 38 } 39 printf("%d\n",dp[m]); 40 } 41 }
标签:
原文地址:http://www.cnblogs.com/qq1012662902/p/4654697.html