@[Maysoul](/user/409774)
```c++
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
double s, v;
cin >> s >> v;
int t = ceil(s/v) + 10; //求走过去的时间,ceil()是向上取整
int h = t / 60; //求小时数
int m = t % 60; //求分钟数
if (h < 8)//走过去不到8小时
{
if (m == 0)
{
h = 8 - h; //出发的小时数=8:00-h
m = 0;
}
else
{
h = 7 - h; //出发的小时数=7:00-h
m = 60 - m; //出发的分钟数
}
}
else
{
h -= 8; //时间大于8小时,减去8
if (h == 0)
{
if (m != 0)
{
h = 23;
m = 60 - m;
}
}
else
{
h = 24 - h;
if (m != 0)
{
h -= 1;
m = 60 - m;
}
}
}
if (h < 10) //补0
{
if (m < 10) //补0
cout << "0" << h << ":" << "0" << m;
else
cout << "0" << h << ":" << m;
}
else
{
if (m < 10) //补0
cout << h << ":" << "0" << m;
else
cout << h << ":" << m;
}
return 0;
}
```
by Jasper08 @ 2022-03-17 09:16:23
话说您都会 BFS 了怎么不会这个(
by Jasper08 @ 2022-03-17 09:21:38
@[Jasper08](/user/581830) ~~因为懒得自己查错~~
by Maysoul @ 2022-03-17 10:01:04