01背包(模版

01背包(模版 题源#includebits/stdc.h#includeiostreamusingnamespacestd;constintN1009;intdp[N][N];//前n个物品有j个空间获得的最大值intv[N],w[N];intans0;intmain(){intN,V;cinNV;for(inti1;iN;i){cinv[i]w[i];}for(inti1;iN;i){for(intj1;jV;j){dp[i][j]dp[i-1][j];//获取未取的状态}for(intjv[i];jV;j){//ps 可能的状态数就是求最大值是maxdp[i][j]max(dp[i-1][j],dp[i-1][j-v[i]]w[i]);ansmax(ans,dp[i][j]);}}coutans\n;return0;}