洛谷P5707上学迟到
题目来源:https://www.luogu.com.cn/problem/P5707
题意:学校要求在八点前到达,计算最晚出门时间。
已知路上要花十分钟用来垃圾分类。
输入与学校距离s,速度v m/min
输出24小时制的时间
这里考虑到不足1分钟按一分钟计算,所以在计算路上时间时我们需要向上取整,所以会用到ceil函数
以下是AC代码
- 我们把所有时间都转化为分钟,计算后再转化为24小时制时间
- 主要判断时间是否在前一天
#include <bits/stdc++.h>
using namespace std;
void change(int min)//用来把分钟转化为时间。并输出
{
int h=min/60;
min%=60;
if(h<10) cout<<"0"<<h;
else cout<<h;
cout<<":";
//if(min<0) min*=-1;
if(min<10) cout<<"0"<<min;
else cout<<min;
}
int main()
{
float s,v;
cin>>s>>v;
int t=ceil(s/v)+10;//计算路上花费的时间
if(t>8*60)
{
t-=8*60;
int min=24*60;
min-=t;
change(min);
}
else {
int min=8*60;
min-=t;
change(min);
}
return 0;
}

浙公网安备 33010602011771号