Link
这题是个完全背包。。。然后思路什么的比赛的时候想出来了但是却没敲出来。
首先,我们可以当天买,当天卖,所以可以第一天买了一个纪念品,第二天卖了再买,第三天再卖。
所以我们只需处理每一天,完全背包,设f[i][j]为i个物品,成本为j时可以赚到的钱。
f[i][j]=max{f[i-1][j],f[i][j-a[i-1][j]]-a[i-1][j]+a[i][j]} //不选,或(再)选一个
code:
#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
int t,m,n,a[101][101],f[101