提交时间:2024-04-11 21:58:40
运行 ID: 143041
#include<iostream> #include<algorithm> #include<cstring> using namespace std; int w[110][110],dp[110][110]; int main(){ int n,m; while(cin>>n>>m && n!=0 && m!=0){ for(int i = 1; i <= n; i++){ for(int j = 1; j <= m; j++){ cin>>w[i][j]; } } for(int i = 1; i <= n; i++){ for(int j = 1; j <= m; j++){ for(int k = 0; k <= j; k++){ dp[i][j] = max(dp[i-1][j-k]+w[i][k],dp[i][j]); } } } cout<<dp[n][m]<<'\n'; memset(dp,0,sizeof(dp)); } return 0; }