|
本帖最后由 红小豆 于 2024-8-5 11:38 编辑
脑子.exe未响应
题目传送门
先讨论时间
设v0为小奇的速度
t < 0:
如果v >= v0,小奇追不上
如果v < v0,小奇不会跟比自己慢的
t = 0:
求速度最大值,计算下总时间
t > 0:
如果v <= v0,追不上小奇
如果v > v0,,求总时间最小值
注意单位换算
1(m/s) = 3.6(km/h)
- #include <iostream>
- #include <cmath>
- using namespace std;
- void work(int n){
- double minn = 2147483647;
- if (n == 0) return;
- for (int i = 1;i <= n;i++){
- double v,t;
- cin >> v >> t;
- if (t < 0) continue;
- double ride = 16200.0 / v;
- minn = min(minn,ceil(t + ride));
- }
- cout << minn << '\n';
- return;
- }
- int main(){
- ios::sync_with_stdio(0);
- cin.tie(0);
- cout.tie(0);
- int n;
- cin >> n;
- while (n){
- work(n);
- cin >> n;
- }
- return 0;
- }
复制代码
|
|