#9过不了,help!!!

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

```cpp #include<stdio.h> int main(){ int s,v; scanf("%d %d",&s,&v); int hour,minute; hour=(s/v)/60; if((s/v)%60==0) // 建议用三目运算符,这样写太麻烦了 minute=(s/v)%60; else{ // 奇怪的花括号,上面没有但是这里有 minute=(s/v)%60+1; } if(hour>=24) // 这完全没必要,难道是为了安全感么 return 0; if(minute>50){ // 没有必要分情况这么细 // 这里太繁杂了,为什么一定要用printf? // hour的正负问题完全可以这么写 /* hour=6-hour,minute=110-minute; if(hour<0)hour+=24; if(hour<10)cout<<'0'; cout<<hour<<':'minute<<'\n'; */ if(hour<=6){ printf("0%d:%d",6-hour,110-minute); } else if((30-hour)<10){ printf("0%d:%d",30-hour,110-minute); } else{ printf("%d:%d",30-hour,110-minute); } } else{ // 重复的东西太多,把状态合并一些,下面完全是复制粘贴 // 先进行计算,负数就再加上一轮,有前导零就先输出 // 没有必要在计算之前就想好所有情况 if(minute<=40){ if(hour<=7){ printf("0%d:%d",7-hour,50-minute); } else if((31-hour)<10){ printf("0%d:%d",31-hour,50-minute); } else{ printf("%d:%d",31-hour,50-minute); } } else{ if(hour<=7){ printf("0%d:0%d",7-hour,50-minute); } else if((31-hour)<10){ printf("0%d:0%d",31-hour,50-minute); } else{ printf("%d:0%d",31-hour,50-minute); } } } return 0; } ```
by plokmnjiu @ 2024-03-10 22:52:48


虽然是橙题,但是写出了蓝题的气势
by plokmnjiu @ 2024-03-10 22:55:18


|