1227:Ride to Office

【题目描述】

起点与终点相隔4500米。现Charley需要从起点骑车到终点。但是,他有个习惯,沿途需要有人陪伴,即以相同的速度,与另外一个人一起骑。而当他遇到以更快的速度骑车的人时,他会以相应的速度跟上这个更快的人。先给定所有与Charley同路的人各自的速度与出发时间,问Charley以这种方式跟人,骑完4500米需要多少时间。得出的结果若是小数,则向上取整。

【输入】

输入若干组数据,每组数据第一行n(1≤n≤10000),n为0,表示输入结束,接着输入n行数据,每行2个数据,表示速度v和出发时间t,如果t<0,表示陪伴人提早出发了。

【输出】

输出对应若干行数据,每行输出1个数,表示最快到达的时间。

【输入样例】

4
20 0
25 -155
27 190
30 240
2
21 0
22 34
0

【输出样例】

780
771
// Created on 2020/2/14

/*#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <climits>*/
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;
const int idata=10000+5;
int n,m;
int cnt,flag;
double minn=INT_MAX,maxx=-1;
int sum;
bool judge;

struct peo
{
    int tim;
    int speed;
}peo[idata];

int main()
{
    int i,j;
    while(cin>>n&&n)
    {
        minn=99999999;
        for(i=1;i<=n;i++)
        {
            cin>>peo[i].speed>>peo[i].tim;
            if(peo[i].tim>=0)
            {
                if(minn>4.5/peo[i].speed *3600+peo[i].tim)//h*3600=经过的秒数
                {
                    minn=4.5/peo[i].speed *3600+peo[i].tim;
                }
            }
        }
        cout<<ceil(minn)<<endl;
    }

    return 0;
}
发布了189 篇原创文章 · 获赞 8 · 访问量 7227

猜你喜欢

转载自blog.csdn.net/C_Dreamy/article/details/104309801