你的冒号中英切换一下
by sandwich03 @ 2022-11-09 15:37:24
@[Glooda](/user/746267)
by sandwich03 @ 2022-11-09 15:37:43
绝了,注意事项又多一条
by Pre_THU_WHK_winner @ 2022-11-09 15:40:26
@[linzhi123](/user/796403) 刚试过了,还是爆0啊......
by Glooda @ 2022-11-09 16:19:34
你的嵌套`if`导致在 $h$ 和 $m$ 同时小于 $10$ 的时候会输出两遍吧
by Silver_ash @ 2022-11-09 16:28:56
而 $h$ 不小于 $10$ 的时候如果 $m$ 小于 $10$ 格式也不对吧
by Silver_ash @ 2022-11-09 16:30:41
调好的代码
```cpp
#include<bits/stdc++.h>
using namespace std;
int main(){
int s,v,t,h,m,n=480;
cin>>s>>v;
t=ceil(1.0*s/v)+10;
n=n-t;
if(n<0) n=n+24*60;
h=n/60;
m=n%60;
printf("%02d:%02d",h, m);
return 0;
}
```
1. $\frac{s}{v}$ 结果可能有小数, 要向上取整, 在你的写法里, `int` 默认向下取整
2. 如果输出比较格式化, 最好用`printf`,非常方便
3. 如果到了前一天, $n$ 应该是减成了负数, 所以要加上一天的时间而不是减
by Silver_ash @ 2022-11-09 16:41:02
@[Silver_ash](/user/654462) 感谢大佬,简单按照你的建议修改了下,至少最后三个点拿下了,等会继续研究下,今天必须拿下这题
by Glooda @ 2022-11-09 17:15:05
大佬我过啦!谢谢你大佬!!!
by Glooda @ 2022-11-09 17:27:28