@[小明小红](/user/368346)
```
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll n,m,mapp[109][109],dp[109][109],last[109][109];
void print(ll x,ll y)
{
if(last[x][y]==y){ printf("%lld ",y);
return;}
print(x-1,last[x][y]);
printf("%lld ",y);
}
int main()
{
memset(dp,-63,sizeof(dp));
cin>>n>>m;
for(ll i=1;i<=n;i++)
{
for(ll j=1;j<=m;j++)
{
cin>>mapp[i][j];
}
}
for(int i=1;i<=m-n;i++)
dp[1][i]=mapp[1][i],last[1][i]=i;
for(ll i=2;i<=n;i++)
{
for(ll j=i;j<=m+i-n;j++)
{
for(ll k=1;k<j;k++)
{
if(dp[i-1][k]>dp[i][j])
{
dp[i][j]=dp[i-1][k];
last[i][j]=k;
}
}
dp[i][j]+=mapp[i][j];
}
}
ll tx=n,ty,ans=0;
for(int i=n;i<=m;i++)
if(dp[n][i]>ans){ ans=dp[n][i]; ty=i;}
printf("%lld\n",ans);
print(tx,ty);
return 0;
}
```
by cannotdp @ 2023-02-25 11:48:42
···
谢谢大佬
by 小明小红 @ 2023-02-25 11:49:22