# 【深基2.例12】上学迟到
## 题目描述
学校和 yyy 的家之间的距离为 s 米,而 yyy 以 v 米每分钟的速度匀速走向学校。
在上学的路上,yyy 还要额外花费 10 分钟的时间进行垃圾分类。
学校要求必须在上午 8:00前到达,请计算在不迟到的前提下,yyy 最晚能什么时候出门。
由于路途遥远,yyy 可能不得不提前一点出发,但是提前的时间不会超过一天。
## 输入格式
一行两个正整数 s,v,分别代表路程和速度。
## 输出格式
输出一个 24 小时制下的时间,代表 yyy 最晚的出发时间。
输出格式为 HH:MM,分别代表该时间的时和分。必须输出两位,不足前面补 0。
## 样例 #1
### 样例输入 #1
```
100 99
```
### 样例输出 #1
```
07:48
```
## 提示
对于 100%的数据,s>=1,v<10^4
这道题有很多坑,踩了几次后也是成功解决了,代码如下
#include<stdio.h>
#include<stdlib.h>
int main()
{
int s = 0;
int v = 0;
int a = 0;
int t = 8 * 60 - 10; //截止时间减去垃圾分类的时间,将时间化为分钟
scanf("%d %d", &s, &v); //输入
a = (double)(s / v);
if (s % v == 0)
{
if (t > a)
t = t - (int)a;
else
t = 24 * 60 - (int)a + t;//前一天出发的yyy不简单
}
else
{
if (t > a)
t = t - (int)a - 1;//向下取整
else
t = 24 * 60 - (int)a +t-1;
}
if (a > 24 * 60)
{
exit(0);
}
printf("%02d:%02d", t / 60, t % 60);//补0
return 0;
}