1060: 鹊桥相会
来源:互联网 发布:软件外包公司分录 编辑:程序博客网 时间:2024/04/30 14:45
1060: 鹊桥相会
总提交: 918 测试通过:262
描述
一年一度的七夕又要到了,可歌可泣的牛郎织女又可以在鹊桥相会了。不知道大家有没有雅兴陪redraiment坐在葡萄藤下倾听他们的对话。
我们知道,牛郎要与织女相见,必须要有喜鹊搭桥。所以,牛郎必须在天河岸上等待,直到有喜鹊经过,于是牛郎可以搭乘这只喜鹊往河对岸走。当然,牛郎急着去见织女,所以在途中,如果有速度更快的喜鹊赶上了他,他就会换乘那只速度更快的喜鹊。
我们可以假定喜鹊的速度是恒定不变的,并且喜鹊一直是沿直线飞行的(不转弯,更不回头),牛郎坐上喜鹊所花的时间忽略不计。
现给出天河的宽度、每只喜鹊的初始位置(我们设牛郎所在位置为0,天河方向为正方向)以及它们的速度(有可能是负数,代表喜鹊往反方向飞行),这些数据都是整数。请你来帮忙计算一下牛郎到达对岸与织女相会最少需要多少时间,让他们早些有情人终成眷属。^_^
当然,如果没有喜鹊来搭载牛郎,我们可怜的牛郎就到不了对岸与织女相会了,那我们只好很遗憾的跟牛郎说:“Can't Solve”,我们祈祷不要发生这样的事情。
输入
第一行有两个数据w、n,分别代表天河的宽度(单位:km)和喜鹊的只数(1≤w≤1000, 1≤n≤10000)。
接下来从第二行到第n+1行每行都有两个数据t、v,分别代表1只喜鹊的初始位置(单位:m)和它的飞行速度(单位:m/s)(-1000≤t≤1000, -100≤v≤100)。
所有的数据范围都不会超过32位整数的表示范围(用int型数据不会溢出)。
输入以0 0结束。
输出
如果牛郎能到达对岸输出他到达对岸所花的总时间(结果精确到秒即可,小数部分舍去);否则输出“Can't Solve”。
样例输入
1 10 10 0
样例输出
1000
题解:要考虑的问题,位置大于0的鸟是不可能换,因为前面的鸟速度快的,当前的鸟是追不到,只需要考虑位置小于0的鸟,之后面的鸟的速度大,不要考虑中途换鸟,只需要考虑速度最大,时间最小。
AC code:
#include <iostream>using namespace std;int main(){int n,i;int w,v,t;double min, time;while(scanf("%d%d", &w, &n),w+n){min=1<<30;for(i=0; i<n; i++){scanf("%d%d",&t,&v);if(t<=0 && v>0){time = 1.0*(w*1000-t)/v; if(time<min){min = time;} }}if(min==(1<<30))printf("Can't Solve\n");elseprintf("%d\n",(int)min);} return 0;}
- 1060: 鹊桥相会
- 鹊桥相会
- 鹊桥相会
- 鹊桥相会
- 鹊桥相会
- 鹊桥相会---编程马拉松
- TOJ 2921 古韵之鹊桥相会 / 深搜
- |Vijos|图论最短路|P1406 古韵之鹊桥相会
- 面与卤的鹊桥相会——桥接模式
- VIJOS-P1406 古韵之鹊桥相会 最短路 模型
- 最短路径 vijos P1406古韵之鹊桥相会
- 1060
- 1060
- 1060
- hdu 1060
- hdu 1060
- HDU 1060
- hdu 1060
- 中国的悲哀:电视剧原来是这样审查的!瞬间跪了!
- 面试题-反转链表
- javaweb里面的状态码解析。
- java 排序算法实现 其四:快速排序
- 为了双11写了几个来替代手工的瑕疵品
- 1060: 鹊桥相会
- 混合图欧拉回路 POJ 1637
- mysql 忘记了 root 密码
- hdu2196——Computer
- POJ 2777 count color(线段树,lazy标记)
- 360公司2015年秋季校园招聘笔试考卷(技术类 D)部分试题程序验证和解析5
- 我的CSDN主页开启了
- EK算法模版
- C语言字符串的那些事儿