USACO3.1 Stamps(stamps)_weixin_34092370的博客-程序员秘密

技术标签: python  数据结构与算法  c/c++  

        动态规划题,隐式二维费用背包,设s[i]表示输入的邮票面值,d[k]表示贴出k邮资所需要的邮票的最少张数。于是动态转移方程:d[j+s[i]]=min{d[j+s[i]],d[j]+1}。对j:0~mm*m,i:0~n-1,求每一对组合(j,i)决定的d[j+s[i]]的最小值,最后d[k]的值就是贴出k邮资所需邮票数量的最小值。注意初始化,除了d[0]=0,其他都初始化为10000。

/*
ID:jzzlee1
PROB:stamps
LANG:C++
*/
//#include<iostream>
#include<fstream>
using namespace std;
ifstream cin("stamps.in");
ofstream cout("stamps.out");
short d[2010000];int s[200];
int main()
{
	int i,j,m,n,mm=0,ans=0;
	cin>>m>>n;
    for (i=0;i<n;++i)
	{
		cin>>s[i];
		if(mm<s[i])
			mm=s[i];
    }
    for(i=1;i<=mm*m+3;++i)
		d[i]=10000;
	for (j=0;j<=mm*m;++j)
		 for (i=0;i<n;++i)
			if(d[j]<m&&d[j+s[i]]>1+d[j])
				d[j+s[i]]=1+d[j];
    while (d[ans+1]<=m)
		++ans;
	cout<<ans<<endl;
	return 0;
}

转载于:https://my.oschina.net/u/347565/blog/66201

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_34092370/article/details/92000749

智能推荐

SQL FIRST() 函数_sql里面的first vlua_一杯苦茶的博客-程序员秘密

SQL FIRST() 函数FIRST() 函数FIRST() 函数返回指定的字段中第一个记录的值。提示:可使用 ORDER BY 语句对记录进行排序。SQL FIRST() 语法SELECT FIRST(column_name) FROM table_name不能执行:SELECT FIRST(column_name1),colum

结构体定义 typedef struct LNode 用法说明_有邪的博客-程序员秘密

最近复习数据结构,对链表的定义进行下说明:将typedef和结构体的定义和结构体指针的定义连在一起写,精简为如下代码:typedef struct LNode{ ElemType data; struct LNode *next;}LNode,*LinkList;将精简代码还原:struct LNode { ElemType data; str...

大华摄像头获取yuv数据_大华 视频监控yuv_那年晴天的博客-程序员秘密

这里我把从大华公司获取的资料代码贴出来,希望对大家有所帮助。// DecCallBack.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include "dhnetsdk.h"#include #include "dhplay.h

小心vCenter Server磁盘空间不足(Unexpected exception from PowerOnIntImpl)_weixin_34310785的博客-程序员秘密

今天收到一客户的电话,在vSphere平台中启动VMs时,出错如下:"Unexpected exception from PowerOnIntImpl"虚拟机无法正常启动。原因:vCenter Server C盘无自由空间解决方法:您懂的!!!本文转自zhxhua51CTO博客,原文链接:http://blog.51cto....

基于图像的三维模型重建_guanglingjun的博客-程序员秘密

基于图像的三维模型重建(1)——特征点检测与匹配**题目基于图像的三维模型重建,即关于图像与三维模型重建。在学习知识的过程中最直观的学习方法即是通过图像(画)来学习(比如幼儿时期学习的小儿漫画书)。因此就需要学习图像处理,其一改善图像便于人类更好的理解(图像复原、增强现实、医学图像、空间图像),其二处理图像便于存储传输和机器感知(图像压缩、图像识别、图像理解);既然图像处理有这么好的作用,则学...

bzoj 4444: [Scoi2015]国旗计划 递推_lych_cys的博客-程序员秘密

首先离散化,然后破环成链,那么覆盖住所有边防站相当于再链中覆盖一段[l,l+n],那么强制选择第i为战士就相当于强制左边界为a[i],a[i]表示第i个战士覆盖的左边界。       另外可以发现,任意两个答案之间不会相差超过1。       那么可以令f[i]表示左端点f[i]走直到i>=l+n,那么步数就相当于最小覆盖上数。发现这构成了一颗树,因此相当于求树中走到一个点的步数。直接暴力

随便推点

关于485总线的EMC防护及多联机地址自动排序_485总线地址分配_Little Studio的博客-程序员秘密

关于485的一些注意事项1、ESD防护普通产品与工业级产品的区别基本就在于有没有ESD防护,也就是工业级产品不管怎么折腾都不会坏。下面是一种防护的方式:注意:需要做地隔离,与电源端区分,走线需要干脆。2、多联机自动地址排序485总线往往都会出现一主机多从机的应用,出现多从机也就会出现地址的排序问题,常规的地址设定一般采用拨码开关设定,但是这种方式太过于麻烦,因此采用地址自动排序方式对地址进行排序。下面是多联机自动地址排序的一个设想:1.从机端进线端直接连接,对出端加入开关控制,也就是控制下一个

Spring Boot 配置文件的使用_春风野马wuhu的博客-程序员秘密

在 Spring Boot 中,配置文件有两种不同的格式,一个是 .properties ,另一个是 .yaml 。虽然 properties 文件比较常见,但是相对于 properties 而言,yaml 更加简洁明了,而且使用的场景也更多,很多开源项目都是使用 yaml 进行配置(例如 Hexo)。除了简洁,yaml 还有另外一个特点,就是 yaml 中的数据是有序的,properties 中的数据是无序的,在一些需要路径匹配的配置中,顺序就显得尤为重要(例如我们在 Spring Cloud Zuul

Referer的理解及防盗链_referer防盗链_流年ꦿ的博客-程序员秘密

Referer利用https网站盗链http资源网站,利用iframe伪造请求、利用XMLHTTPRequest请求是否能修改字段

websocket详细教程(二)—— 客户端_websocket客户端_墨染浮萍的博客-程序员秘密

一、创建连接var connect=new WebSocket("ws://localhost:8080/MyFirstJavaWebApp/websocket");//其中MyFirstJavaWebApp是项目名字//若要传递用户名在websocket后加?username="+username二、回调函数1.connect.onopen=function{};该函数的函数体在执行创建连接成功后触发。2.connect.onmessage = function (evt){ var r_

适配器模式(Adapter)_PrateKing的博客-程序员秘密

什么是工厂模式?工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。简单编写一个类:interface IFruit{ public void eat(); //吃水果}class Apple implements IFruit{ public void eat(){ System.o

[机器学习]斯坦福公开课-第1,2课-监督与非监督矩阵以及梯度下降_xiaoxinxin2016的博客-程序员秘密

本人作为技术小白,首次通过观看斯坦福公开课学习机器学习,现在将所学到的内容记录如下一,明确机器学习,神经网络以及深度学习之间的关系:     机器学习:设计和分析一些学习算法,让计算机从训练样本中获得规律获取决策函数。当有输入时,通过决策我们就知道我们我们所输入的为哪一类了     神经网络:众多的机器学习算法中较为接近生物的神经网络的数学模型。神经网络由模拟神经网络的结构和功能,由大

推荐文章

热门文章

相关标签