问题标题: 酷町堂:1504

0
0
已解决
贾一凡
贾一凡
中级光能
中级光能

题目描述 Description

小C喜欢在上课的时候打瞌睡,有一天在酷町堂上课被老师逮个正着,老师给他出了一个问题,“给定入睡时刻和醒来时刻(都采用24小时制表示法),计算自己一共睡了多长时间(也采用24小时制表示法)”,如果回答正确的话就可以免于惩罚,如果回答错误以后每次课都需要站着上课,且知道小C睡觉时间最少为1秒,最多为24小时。小C不想被惩罚,求助于你,请你帮他计算一下一共睡觉的时间。

输入描述 Input Description

输入为2行,第一行表示入睡时刻,第二行表示醒来时刻。
两者都采用24小时制“HH:MM:SS”的写法,其中“HH”表示时,范围为0~23、“MM”表示分,范围为0~59,“SS”表示秒,范围为0~59。且如果时、分、秒中有数字只有一位数,需要在前面加0来补齐两位。

输出描述 Output Description

输出为一行,表示一共睡了多长时间,输出格式也采用24小时制“HH:MM:SS”的写法,如果时、分、秒中有数字只有一位数,需要在前面加0来补齐两位。

样例输入 Sample Input

样例1#:

20:00:00

04:00:00

样例2#:

12:34:56

14:36:22

样例输出 Sample Output

样例1#: 08:00:00

样例2#: 02:01:26

 

#include<iostream>

using namespace std;

int a,b,c,x,y,z,t1,t2,t,i,j,k;

char m;

int main(){

    cin>>a>>m>>b>>m>>c>>x>>m>>y>>m>>z;

    t1=a*3600+b*60+c;

    t2=x*3600+y*60+z;

    if(t2<t1){

        t2+=24*3600;

    }

    t=t2-t1;

    i=t/3600;

    j=t%3600/60;

    k=t%60;

    if(a==x&&b==y&&c==z){

        cout<<"24:00:00";

    }

    if(i==0){

        cout<<"00:";

    }else if(i<10){

cout<<0<<i<<":";

}else{

cout<<i<<":";

}

if(j==0){

    cout<<"00:";

    }else if(j<10){

cout<<0<<j<<":";

}else{

cout<<j<<":";

}

if(k==0){

    cout<<"00:";

    }else if(k<10){

    cout<<0<<k;

    }else{

        cout<<k;

    }

    return 0;

}

Wrong Answer 90


0
已采纳
王旭杰
王旭杰
高级光能
高级光能

你可以试一下00:00:00到00:00:00

 

0
王旭杰
王旭杰
高级光能
高级光能

用if else

你输出24:00:00就不要输出00:00:00

我要回答