首先我想说一些坑爹的地方:
1、标准化格式:在前面添0;
printf("%02d:%02d",count,sum);
2、由于单位是分钟,有时候s/v是小数,所以要加一。而如果是整数就不加一。这个很重要;
if(s%v==0){
t=s/v;
}
else t=s/v+1;
3、分钟问题:由于它必须中途去分类垃圾,所以必须要减去10分钟;而这10分钟,导致你的时间最晚只能到7:50.进位很不方便;
if(min>50){
h++;
sum=110-min;
}
4、小时问题:如果该题要求时间可以超过24个小时,要将这时间%24;而且昨天也可以开始出发。所以要count=31-h;
h=h%24;
int count=7-h;
if(count<0){
count=31-h;
}
#include<stdio.h>
int main(){
int t,v,s;
scanf("%d %d",&s,&v);//s代表长度;v代表速度;时间+1;
if(s%v==0){
t=s/v;
}
else t=s/v+1;
int h=t/60;
int min=t%60;
int sum=50-min;
if(min>50){
h++;
sum=110-min;
}
h=h%24;
int count=7-h;
if(count<0){
count=31-h;
}
printf("%02d:%02d",count,sum);
return 0;
}
刷题人加油;