0分,why why why!!!???求助

P5707 【深基2.例12】上学迟到

``` 输出格式为 HH:MM,分别代表该时间的时和分。必须输出两位,不足前面补 0。 ```
by tx774 @ 2023-08-21 20:12:37


```cpp #include <iostream> using namespace std; int main() { int s,u,mintime,foutime; float min; cin >> s >> u; min = s / (float)u + 10; foutime = (8 * 60 - (int(min) / 60 + int(min))) / 60; mintime = (8 * 60 - (int(min) / 60 + int(min))) % 60 - 1; if(foutime < 10)cout<<"0"; cout << foutime; if(mintime < 10)cout<<"0"; cout << ':'; cout << mintime; return 0; } ``` 只帮你补了0,但还是只有20(~~没看代码~~)
by tx774 @ 2023-08-21 20:15:51


@[yahu2023](/user/1025203) “由于路途遥远,yyy 可能不得不提前一点出发,但是提前的时间不会超过一天。” 他可能在00:00前就出发 ~~还有min好像是要向上取整吧~~
by tx774 @ 2023-08-21 20:20:34


@[yahu2023](/user/1025203) 由于时间可能大于1天,我们在求出来的分钟数中加上24∗60。 判断剩下的时间是否大于一天,如果大于一天就减去一天的时间 ## 要看题啊大哥
by tx774 @ 2023-08-21 20:22:31


@[yahu2023](/user/1025203) ```cpp #include <bits/stdc++.h>//要加头文件 using namespace std; int main() { int s,u,mintime,foutime; float min; cin >> s >> u; min = ceil( s * 1.0 / u ) + 10;//向下取整 int lasttime = (32*60 - int(min+0.1) ) % (24*60); foutime = lasttime / 60; mintime = lasttime % 60; if(foutime < 10)cout<<"0"; cout << foutime;//md补0补错位置了 cout << ':'; if(mintime < 10)cout<<"0"; cout << mintime; return 0; } ``` ACcode
by tx774 @ 2023-08-21 20:46:21


|