
背包
Keep_Trying_Go
无
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
背包问题(多重背包+0-1背包)
一:0-1背包问题 #include<iostream> #include<algorithm> #include<cstring> const int maxn=100; using namespace std; int w[maxn]; int p[maxn]; int x[maxn]; int c[maxn][maxn]; int kanpsack_1(int n,int m){ for(int i=0;i<=m;i++){ c[0][i]=0;原创 2021-05-02 00:01:04 · 449 阅读 · 2 评论 -
HDU2191
0-1背包问题: #include<iostream> #include<algorithm> #include<cstring> using namespace std; int value[1005]; int valume[1005]; int dp[1005][1005]; int n,v; int dfs(int index,int c){ int res=0; if(dp[index][c]>=0)return dp[index][c]; if(i原创 2021-03-09 00:00:56 · 79 阅读 · 0 评论 -
poj3624
纯背包问题:找到最大的价值。 方法一(Accept) #include<iostream> #include<algorithm> #include<cstring> using namespace std; int w[3403]; int val[3403]; int c[12881]; int main(){ int n,m; while(cin>>n>>m){ memset(w,0,sizeof(w)); memset(val原创 2021-02-26 20:39:14 · 249 阅读 · 0 评论 -
poj1276
题意:其实就是一个背包问题,我采用的是转换为二进制方法求解: #include<iostream> #include<algorithm> #include<cstring> using namespace std; const int maxx=1e5+10; int val[maxx]; int w[maxx]; int v[maxx]; int dp[maxx]; int n,sum; int main(){ while(cin>>sum>>原创 2021-02-25 09:33:50 · 202 阅读 · 0 评论 -
poj1014
题意:背包问题,转换为二进制方法求解: #include<cstdio> #include<cstring> #include<algorithm> #include<iostream> using namespace std; int W,n; int w[7],v[7]; int value[2005]; int dp[200005]; int num[7]; struct node{ int value; int cnt; }p[205]; int原创 2021-02-26 20:36:09 · 227 阅读 · 0 评论