@[zajiu](/user/1294648)
T(从家到学校所需时间)应该向上取整,因为即使走路时间是小数,yyy也无法确切地在非整数分钟出门。
计算最晚出发时间时没有正确处理可能出现的时间溢出问题,比如当计算出的时间小于零时应该加上一天的分钟数(即1440分钟)来修正。
正解:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int s, v;
cin >> s >> v;
int T = ceil((double)s / v);
int Smin = 8 * 60 - T - 10;
if (Smin < 0) {
Smin += 1440;
}
int hour = Smin / 60;
int min = Smin % 60;
printf("%02d:%02d", hour, min);
return 0;
}
```
by TPJ_XiaoJing @ 2024-03-09 09:07:55
如果你用的是VS,那在第一行把```#define _CRT_SECURE_NO_WARNINGS```给加上。
@[zajiu](/user/1294648)
by TPJ_XiaoJing @ 2024-03-09 09:09:12