摘要:
真是一个好题啊,还是想了好几天而且还WA了两次…….令res[i][j]表示前i个COW,Si为j时Fi的最大值。res[i][j]=max(res[i-1][j-Fi[i]],res[i][j]); 因为res[i][]只与res[i-1][]有关空间复杂度省去一维,就像01背包那样。因为j可能为负值,因此我们可以将j设置一个偏移量MOVE。#include<iostream>#include<cstdio>#include<cstring>using namespace std;#define MAX 1234567890#define MOVE 100 阅读全文