tijie

凌艺樽  •  1个月前


我这种蒟蒻也只能刷这种小儿科题目了QAQ

#include<bits/stdc++.h>
using namespace std;

const int N=1e3+10;
int n,m;
int a[N][N],dp[N];

int main()
{
	while(scanf("%d%d",&n,&m)==2 && (n!=0&&m!=0) )
	{
		memset(dp,0,sizeof(dp));
		for(int i=1;i<=n;++i)
		{
			for(int j=1;j<=m;++j)
			{
				scanf("%d",&a[i][j]);
			}
		}
		for(int i=1;i<=n;++i)
		{
			for(int j=m;j>=1;--j)
			{
				for(int k=j;k>=0;--k)
				{
					dp[j]=max(dp[j],dp[j-k]+a[i][k]);
				}
			}
		}
		printf("%d\n",dp[m]);
	}	
	
	return 0;
}

评论: