洛谷P1016 旅行家的预算 题解
主要就是注意一下各个变量的类型别弄混了
https://www.luogu.org/problem/P1016
#include<cstdio>
using namespace std;
double d[10],a[10];
int main()
{
	double d1,c,d2,p,b=0;
	int n;
	scanf("%lf%lf%lf%lf%d",&d1,&c,&d2,&p,&n);
	double x=c*d2;
	d[0]=0;
	a[0]=p;
	for(int i=1;i<=n;i++)
	{
		scanf("%lf%lf",&d[i],&a[i]);
	}
	for(int i=1;i<=n;i++)
	{
		if(d[i]-d[i-1]>x)
		{
			printf("No Solution\n");
			return 0;
		}
	}
	double Min=505;
	double tmp=0;
	int tag=0;
	double ans=0;
	a[0]=p;
	while(d1-tmp)
	{
		for(int i=tag+1;d[i]-tmp<=x&&i<=n;i++)
		{
			if(a[i]<Min)
			{
				Min=a[i];
				tag=i;
			}//找出能到达的油费小于现在的
		}
		if(Min<=p)
		{
			ans+=((d[tag]-tmp)/d2-b)*p;
			b=(d[tag]-tmp)/d2;
		}
		else
		if(d1-tmp>x)
		{
			ans+=(c-b)*p;
			b=c;
		}
		else
		{
			ans+=((d1-tmp)/d2-b)*p;
			break;
		}
		b-=(d[tag]-tmp)/d2;
		tmp=d[tag];
		p=Min;
		Min=505;
	}
	printf("%.2lf\n",ans);
	return 0;
}
洛谷P1016 旅行家的预算 题解的更多相关文章
- 洛谷 P1016 旅行家的预算
		P1016 旅行家的预算 题目OJ链接https://www.luogu.org/problemnew/show/P1016 题目描述一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时 ... 
- 洛谷 P1016 旅行家的预算 模拟+贪心
		目录 题面 题目链接 题目描述 输入输出格式 输入格式 输出格式 输入输出样例 输入样例 输出样例 说明 思路 AC代码 总结 题面 题目链接 P1016 旅行家的预算 题目描述 一个旅行家想驾驶汽车 ... 
- 洛谷P1016 旅行家的预算
		题目描述 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的).给定两个城市之间的距离D1.汽车油箱的容量C(以升为单位).每升汽油能行驶的距离D2.出发点每升汽油价格P和沿 ... 
- [NOIP1999] 提高组 洛谷P1016 旅行家的预算
		题目描述 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的).给定两个城市之间的距离D1.汽车油箱的容量C(以升为单位).每升汽油能行驶的距离D2.出发点每升汽油价格P和沿 ... 
- 洛谷 P1016 旅行者的预算
		传送门 感觉自己连点生活常识都没有,竟然连油用过之后要减去都不知道,这种贪心模拟题都做不出来--思路在代码里,我菜死了 思路&&代码 //看题解过的..一点都没有成就感 #includ ... 
- 洛谷P1783  海滩防御 分析+题解代码
		洛谷P1783 海滩防御 分析+题解代码 题目描述: WLP同学最近迷上了一款网络联机对战游戏(终于知道为毛JOHNKRAM每天刷洛谷效率那么低了),但是他却为了这个游戏很苦恼,因为他在海边的造船厂和 ... 
- P1016 旅行家的预算
		P1016 旅行家的预算 题目描述 一个旅行家想驾驶汽车以最少的费用从一个城市到另一个城市(假设出发时油箱是空的).给定两个城市之间的距离D1.汽车油箱的容量C(以升为单位).每升汽油能行驶的距离D2 ... 
- 洛谷P4047 [JSOI2010]部落划分题解
		洛谷P4047 [JSOI2010]部落划分题解 题目描述 聪聪研究发现,荒岛野人总是过着群居的生活,但是,并不是整个荒岛上的所有野人都属于同一个部落,野人们总是拉帮结派形成属于自己的部落,不同的部落 ... 
- P1016 旅行家的预算——贪心
		P1016 旅行家的预算 贪心求,在当前点如果能到达距离最近的油价比他小的就直接去油价比他小的, 如果在可行范围内没有比他油价小的,就加满开到可行范围内油价最小的点: 这么做是对的,我不会证明: 还有 ... 
随机推荐
- 将图片画到canvas 上的几种方法(转)
			转自:https://blog.csdn.net/qq_15009739/article/details/82809525 
- SVN_01概念
			客戶端TortoiseSVN 服务器端VIsualSVN SVN是Apache Subversion的缩写,是一个开放源代码的版本控制系. 这些数据放置在一个中央资料库(repository)中.这 ... 
- 笔记 - C#从头开始构建编译器 - 1
			视频与PR:https://github.com/terrajobst/minsk/blob/master/docs/episode-01.md 作者是 Immo Landwerth(https:// ... 
- MyBatis 常用词汇含义
			JDBC:java Data Base Connection(Java与数据库连接): ORM:Object Relational Mapping(对象关系映射,简称ORM,或者O/RM,或者O/M ... 
- VBA循环(十一)
			当需要多次执行一段代码时,就可以使用循环语句. 一般来说,语句是按顺序执行的:函数中的第一个语句首先执行,然后是第二个,依此类推. 编程语言提供了各种控制结构,允许更复杂的执行路径. 循环语句允许多次 ... 
- 将网址url中的参数转化为JSON格式的两种方法
			在我们进入主题前,我先先看下获取网址URL的方法: window.location.href // 设置或获取整个URL为字符串 window.location.hash // 设置或获取href属性 ... 
- 正则表达式字符&使用
			正则详细解说:https://juejin.im/post/5965943ff265da6c30653879 一.正则表达式中的字符含意 \ 做为转义,即通常在"\"后面的字符不按 ... 
- 使用pandoc制作幻灯片
			示例Md % Habits % John Doe % March 22, 2005 # In the morning ## Getting up - Turn off alarm - Get out ... 
- mysql8.0授权远程登录
			之前一直用mysql5.6 远程授权登录,后来换mysql8.0原来的授权方式报错 mysql> grant all privileges on *.* to 'root'@'%' identi ... 
- ResourceManager学习之ApplicationMaster,NodeManager管理
			ApplicationMaster管理部分主要由三个服务构成,分别是ApplicationMasterLauncher.AMLivelinessMonitor和ApplicationMasterSer ... 
