Codevs 2033 邮票
来源:互联网 发布:淘宝店铺多久才能有钻 编辑:程序博客网 时间:2024/06/05 00:17
题目:
http://codevs.cn/problem/2033/
题解:
完全背包,每个面值的邮票可以无限放,求一个最小张数,若小于等于n,则能凑出。
体积是要凑得面值,价值是枚数,取min,要初始化为inf。(类似于恰好装满体积为V的背包)
注意特判若最大值*总枚数以内的面值都能凑出,则输出maxx*n;
代码:
#include<iostream>#include<cstdio>using namespace std;int n,k,maxx=-1;const int inf=1e9+7;int v[100],dp[2000500];int main(){ scanf("%d%d",&n,&k); for(int i=1;i<=k;i++) scanf("%d",&v[i]),maxx=max(maxx,v[i]); for(int i=1;i<=maxx*n;i++) dp[i]=inf; for(int i=1;i<=k;i++){ for(int j=v[i];j<=maxx*n;j++) dp[j]=min(dp[j],dp[j-v[i]]+1); } for(int i=1;i<=maxx*n;i++){ if(dp[i]>n) { printf("%d",i-1); return 0; } } printf("%d",maxx*n); return 0;}
阅读全文
0 0
- Codevs 2033 邮票 USACO
- codevs 2033 邮票(背包)
- Codevs 2033 邮票
- codevs 2033 邮票 (背包)&& codevs 1047 邮票面值设计 (dfs+dp)
- 20160319 CodeVs 1073 家族,2033 邮票,1026 逃跑的拉尔夫
- Codevs P1047 邮票面值设计
- codevs 1047 邮票面值设计
- codevs 1047邮票面值设计
- Codevs 1047 邮票面值设计
- 邮票面值设计(codevs 1047) 题解
- codevs 1047 邮票面值设计(dfs+背包,好题)
- 【codevs】 1047 邮票面值设计(dfs+dp剪枝)
- codevs 1047 邮票面值设计 DFS+DP 解题报告
- 邮票
- 邮票
- 邮票
- 邮票
- Codevs
- LCD接口总结
- laravel框架数据迁移、填充(简单示例)--学习笔记
- string 类主要函数操作笔记
- 对数据进行哈希加盐加密
- Stm32的TFT LCD显示器控制学习笔记
- Codevs 2033 邮票
- C++项目总结三之内存泄漏
- 直方图计算
- C++中#include <climits>
- java一行一行写入或读取数据
- SpringCloud(第 027 篇)集成异构微服务系统到 SpringCloud 生态圈中(比如集成 nodejs 微服务)
- 日记—9.28
- 第二个shell程序------字符串变量操作
- 初识c#---委托,事件和观察者模式(Observer)设计模式