洛谷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; }
全部评论

相关推荐

05-12 17:00
门头沟学院 Java
king122:你的项目描述至少要分点呀,要实习的话,你的描述可以使用什么技术,实现了什么难点,达成了哪些数字指标,这个数字指标尽量是真实的,这样面试应该会多很多,就这样自己包装一下,包装不好可以找我,我有几个大厂最近做过的实习项目也可以包装一下
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务