QAQvQAQ @ 2024-01-11 22:00:37
#include<bits/stdc++.h>
using namespace std;
inline int read()
{
int x=0,f=1;char ch=getchar();
while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
while (ch>='0'&&ch<='9'){x=x*10+ch-48;ch=getchar();}
return x*f;
}
int s,v,h=7;
int mn=50,kc;
int main(){
s=read();
v=read();
if(s%v){
kc=s/v+1;
}else{
kc=s/v;
}
mn-=kc;
while(mn<0){
mn+=60;
h-=1;
if(h==0){
h=24;
}
}
if(h<10){
if(mn>=10){
cout<<0<<h<<":"<<mn;
}else{
cout<<0<<h<<":"<<0<<mn;
}
}else{
if(mn>=10){
cout<<h<<":"<<mn;
}else{
cout<<h<<":"<<0<<mn;
}
}
return 0;
}
by Weekoder @ 2024-01-11 22:58:58
@black_life 调了快一个小时,终于是改对了:
#include<bits/stdc++.h>
using namespace std;
inline int read()
{
int x=0,f=1;char ch=getchar();
while (ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
while (ch>='0'&&ch<='9'){x=x*10+ch-48;ch=getchar();}
return x*f;
}
int s,v,h=7;
int mn=50,kc;
int main(){
s=read();
v=read();
if(s%v){
kc=s/v+1;
}else{
kc=s/v;
}
mn-=kc;
while(mn<0){
mn+=60;
h-=1;
if(h==0){
h=24;
}
}
if(h==24){
h=0;
}
if(h<10){
if(mn>=10){
cout<<0<<h<<":"<<mn;
}else{
cout<<0<<h<<":"<<0<<mn;
}
}else{
if(mn>=10){
cout<<h<<":"<<mn;
}else{
cout<<h<<":"<<0<<mn;
}
}
return 0;
}
问题是
真的调了很久,求关注!
by Rieman_sum @ 2024-01-12 15:12:39
没必要这么长吧。。。
参考我的
#include<bits/stdc++.h>
using namespace std;
float n,v;
int main()
{
cin>>n>>v;
int h,m;
int k=ceil(n/v);
if(k>1440) k=1440;
h=7;
m=50;
while(1)
{
k--;
if(m==0)
{
m=59;
h--;
if(h==-1) h=23;
}
else ____//这里填什么?
if(!k) break;
}
if(h<10) cout<<'0';
cout<<h<<':';
if(m<10) cout<<'0';
cout<<m<<endl;
return 0;
}
by QAQvQAQ @ 2024-01-12 16:23:35
@Weekoder 感谢,已关
by QAQvQAQ @ 2024-01-12 16:27:53
@Guo1 不会ceil(蒟蒻的呻吟
ceil是整除?
by Weekoder @ 2024-01-12 18:19:21
@black_life ceil 函数的话,就是向上取整,你的那种写法也可以:
if(s%v){
kc=s/v+1;
}else{
kc=s/v;
}
这样还只需要用 int 类型。