题目链接:点击进入

题目分析:

简单的组合背包模板题,但是递推的同时要刷新这种情况使用了哪些物品

ac代码:

#include<bits/stdc++.h>
using namespace std;
int weigh[],zhu[],t[];
struct student
{
int s;
int number;
int a[];
}f[][];
int main()
{
std::ios::sync_with_stdio(false);
int m,v,n;//m总重量,v总阻力,n物品数
cin>>m>>v>>n;
for(int i=;i<=n;i++)
{
cin>>weigh[i]>>zhu[i]>>t[i];//weigh个体重量,zhu个体阻力,t个体价值
}
for(int i=;i<=n;i++)
for(int mi=m;mi>=weigh[i];mi--)
for(int vi=v;vi>=zhu[i];vi--)
{
//printf("\nnumber=%d\n",f[0][0].number);
if(f[mi][vi].s<f[mi-weigh[i]][vi-zhu[i]].s+t[i])
{
f[mi][vi].s=f[mi-weigh[i]][vi-zhu[i]].s+t[i];
if(f[mi-weigh[i]][vi-zhu[i]].number==)
{
f[mi][vi].a[]=i;
f[mi][vi].number=;
}
else
{
for(int x=;x<=f[mi-weigh[i]][vi-zhu[i]].number;x++)
{
f[mi][vi].a[x]=f[mi-weigh[i]][vi-zhu[i]].a[x];
}
f[mi][vi].number=f[mi-weigh[i]][vi-zhu[i]].number+;
f[mi][vi].a[f[mi][vi].number]=i;
}
}
}
int maxn=f[m][v].s,last_i=m,last_j=v;
printf("%d\n",maxn);
for(int i=m;i>=;i--)
for(int j=v;j>=;j--)
{
if(f[i][j].s!=maxn&&f[last_i][last_j].s==maxn)
{
for(int x=;x<=f[last_i][last_j].number;x++)
{
printf("%d ",f[last_i][last_j].a[x]);
}
//printf("%d",f[last_i][last_j].number);
return ;
}
last_i=i;last_j=j;
}
return ;
}

然后最后在找到相同时间下使用的最少物品情况就好了

对于f数组可以用结构体存,这样更方便,顶多不好写,可是思路清晰

我对于当前已经存了多少个数是从一开始记,所以用了if,else的分类讨论,防止出查错

最新文章

  1. flask+sqlite3+echarts3+ajax 异步更新数据
  2. PO、VO、BO、DTO、POJO、DAO
  3. 在SQL Server 2016里使用查询存储进行性能调优
  4. SSH 小总
  5. 对Javascript异步执行的理解
  6. 最精简的IOCP封装
  7. python flask model 序列化
  8. Linux进程调度和切换过程分析
  9. Android中的事件分发机制总结
  10. jquery $.each() 小探
  11. jekyll博客安装
  12. VS2013全攻略(安装,技巧,快捷键,插件)!
  13. qemu 模拟-arm-mini2440开发板-启动u-boot,kernel和nfs文件系统【转】
  14. 近期Mac上编译geany软件的总结
  15. 路由器动态DNS设置
  16. sql server连接oracle并实现增删改查
  17. Effective Java 第三版——69. 仅在发生异常的条件下使用异常
  18. select标签(分组下拉菜单和列表)
  19. php实现同一时间内一个账户只允许在一个终端登陆
  20. go语言练习:指针

热门文章

  1. Fiddler对https抓包时,提示&quot;HTTPS decryption is disabled.&quot;原因及破解
  2. bzoj 4826: [Hnoi2017]影魔【单调栈+树状数组+扫描线】
  3. (3)css文本样式
  4. qr.update导致的java.lang.NullPointerException空指针异常
  5. Luogu P1119 灾后重建 【floyd】By cellur925
  6. HttpSession讲解
  7. icons使用
  8. hdu 3966 Aragorn's Story
  9. 一命令安装nginx
  10. [转]MySQL游标的使用