多重背包问题是对物品的数目有了限制 并且加强了数据
n2复杂度会超时 所以使用二进制优化
一般数据俩循环就能AC
不过>10000则费劲了,
需要用二进制优化 ,如下:
7 = 2^0 + 2^1 + 2^2
这样只需循环3次 大大缩减了时间复杂度。
#include <iostream>
#include <vector>
using namespace std;
int N,V;
int f[2010]
多重背包问题是对物品的数目有了限制 并且加强了数据
n2复杂度会超时 所以使用二进制优化
一般数据俩循环就能AC
不过>10000则费劲了,
7 = 2^0 + 2^1 + 2^2
这样只需循环3次 大大缩减了时间复杂度。
#include <iostream>
#include <vector>
using namespace std;
int N,V;
int f[2010]