WATP @ 2024-10-20 17:38:43
#include <stdio.h>
int main()
{
int s,v;
double t;
scanf("%d %d",&s,&v);
//计算总耗时分钟数
t = 1.0*s/v;
//计算分钟标准时间点
t = 470.0 - t;
//转化整型
long tz = t;
//时间0直接输出00:00
if (tz == 0)
{
printf("00:00");
return 0;
}
//大于8h时转化为头天时间
if (tz <= 0)
{
tz = 24*60 + tz;
}
//转化为HH:MM格式
long min = tz%60;
long hr = (tz-min)/60;
//输出
printf("%02d:",hr);
printf("%02d",min);
return 0;
}
by JackZhai @ 2024-10-23 09:10:09
@WATP 我觉得需要考虑一下t为负数时问题,当470-t,t>470时可能会出现负数数值.希望能帮到你
by WATP @ 2024-10-23 12:36:06
@JackZhai ```c if (tz <= 0) { tz = 24*60 + tz; }
在这里考虑到了,如果最终结果小于零,直接累加到头天的整24小时上