2016寒假训练——01背包
来源:互联网 发布:期货行情软件下载 编辑:程序博客网 时间:2024/06/05 15:18
来源POJ3624
继续继续。。。前面把字典树写了两题,下面来两题背包。
背包最基础的题目,01背包。。。
我直接在代码上面注释吧?
AC代码:
#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>using namespace std;struct Stone{ int v;//体积 int p;//价格}s[100100];int c[100100];int m(int a,int b){ if(a>b)return a; else return b;}//比较的一个int main(){ int n,con; long long ans=0; while(scanf("%d%d",&n,&con)!=EOF){ memset(c,0,sizeof(c)); int i=0,j; for(i=0;i<n;i++) cin>>s[i].v>>s[i].p; for(i=0;i<n;i++){ for(j=con;j>=s[i].v;j--) c[j]=m(c[j],c[j-s[i].v]+s[i].p);//详见动态转移方程
/*用一个dp[]数组来作为标记的,其实有记录下所有搜索情况的意思。。。*/ } cout<<c[con]<<endl; } return 0;}
1 0
- 2016寒假训练——01背包
- 2016寒假训练——寒假结束
- 寒假训练--01背包,完全背包--小P的故事——神奇的Dota
- 寒假训练--01背包完全背包--小P的故事——神奇的饭卡
- 寒假训练--01背包完全背包--小P的故事——神奇的分组
- 寒假训练--01背包完全背包--小P的故事——神奇的换零钱
- 2016寒假训练——二分
- 2016寒假训练——二分
- 2016寒假训练——二分
- 2016寒假训练——字典树
- 2016寒假训练——搜索
- 2016寒假训练——字典树
- 2016寒假训练——树状数组
- 2016寒假训练——线段树
- 2016寒假训练——数论
- 2016寒假训练——二分
- 2016寒假训练——搜索
- 2016寒假训练——尺取法
- POJ--2386 Lake Counting
- HDU 1754 I Hate It(线段树:单点替换,区间最值)
- liunx下tomcat的安装以及详解
- PHP利用可变函数动态扩增类的属性
- 2015年自我总结与否定之再总结
- 2016寒假训练——01背包
- MD5工具类
- POJ--3009 Curling 2.0
- 线性表 之 链表反转
- 十大滤波算法程序大全
- 检测棋盘格角点
- LeetCode 258. Add Digits
- Java反转单链表
- 类的属性、对象的私有字段与主构造器、私有构造器、重载构造器