hdu2639(01背包的第K大)
来源:互联网 发布:知乎a tender feeling 编辑:程序博客网 时间:2024/05/21 14:00
链接:点击打开链接
题意:求01背包的第K大值
代码:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <iostream>#include <algorithm>using namespace std;int v[105],w[105],dp[1005][35],tmp[2005];int main(){ int N,K,V,i,j,k,t,l,cnt; scanf("%d",&t); while(t--){ //dp[i][j]代表容量是i第j大 scanf("%d%d%d",&N,&V,&K); for(i=0;i<N;i++) scanf("%d",&w[i]); for(i=0;i<N;i++) scanf("%d",&v[i]); memset(dp,0,sizeof(dp)); for(i=0;i<N;i++){ for(j=V;j>=v[i];j--){ cnt=0; for(k=1;k<=K;k++){ tmp[cnt++]=dp[j-v[i]][k]+w[i]; tmp[cnt++]=dp[j][k]; } //把所有情况存起来 sort(tmp,tmp+cnt,greater<int>()); l=unique(tmp,tmp+cnt)-tmp; for(k=1;k<=min(l,K);k++) //去重排序赋值 dp[j][k]=tmp[k-1]; } } printf("%d\n",dp[V][K]); } return 0;}
0 0
- hdu2639(01背包的第K大)
- hdu2639(第k大值+01背包)
- 01背包第k大价值hdu2639
- hdu2639(求价值第K大的01背包)
- hdu2639-01背包(第k大背包问题)
- hdu2639(01背包变形-第k大背包)
- hdu2639----求第k大01背包模板题
- HDU2639 - Bone Collector II(第k大01背包)
- HDU2639 01背包的第K最优决策
- HDU2639 01背包 第K优决策
- hdu2639 01背包第k优解
- HDU2639 01背包 第K优决策
- hdu2639 Bone Collector II 01背包边形,第k大价值
- hdu2639 Bone Collector II 01背包第K优解
- hdu2639(01背包求第k优解)
- hdu2639 Bone Collector II (01背包第k大解)
- hdu2639 Bone Collector II(01背包第k优解)
- HDU2639:Bone Collector II(01背包第k优解)
- DAO,如何实现模糊查询
- Bulb Switcher---319
- Spring框架中CharacterEncodingFilter的作用真的没那么大
- 数据挖掘算法之K-Means算法演示
- Linux&Unix 分类下的文章
- hdu2639(01背包的第K大)
- bat修改文件内容
- sqldeveloper使用
- 正则表达之----验证数字的正则表达式集
- 根据给定日期判断当天是星期几
- android studio 签名,打包,混淆,多渠道打包
- XMPP的简单了解及使用(1)
- Android学习之跨进程通信安卓接口定义语言AIDL(二)
- ghjgk