题意
骑自行车,开始时间有负数的,选择开始时间非负数的最早出发的人,一起出发,然后被别人超过时,就追上去,终点距离是4.5km,速度单位是km/s,求到达的时间(s)。
分析
贪心,找开始时间非负的人里最早到达的即可。
代码
#include<cstdio> #include<cmath> int n=1,v,b; double c,ans; int main() { while(scanf("%d",&n)&&n) { ans=9999999999; for(int i=0; i<n; i++) { scanf("%d%d",&v,&b); c=4.5/v*3600+b;//到达的时间 if(b>=0&&c<ans)ans=c;//在开始时间是非负的里找最早到的。 } printf("%.0lf ",ceil(ans));//向上取整 } return 0; }