[ACM]时间计算器

Input

多组输入数据。

每组数据为两个字符串,每个字符串占一行。

字符串格式为"hh:mm",其中00<=hh<=23并且00<=mm<=59。

第一行字符串表示Jam(某著名土豪战学长)起床时间,第二行字符串表示他从另一个室友口中得知自己睡了多久。

Output

对每组数据,输出一行格式为与输入数据中字符串格式相同的时间,表示Jam是几点睡觉的。

Sample Input

05:50
05:44
00:00
01:00
00:01
00:00

Sample Output

00:06
23:00
00:01
#include<iostream>
#include<string>

using namespace std;

int main()
{
	string time1, time2;
	while (cin >> time1 >> time2)
	{
		int hour1, hour2, min1, min2, hour, min;
		hour1 = (time1[0] - '0') * 10 + (time1[1] - '0');
		hour2 = (time2[0] - '0') * 10 + (time2[1] - '0');
		min2 = (time2[3] - '0') * 10 + (time2[4] - '0');
		min1 = (time1[3] - '0') * 10 + (time1[4] - '0');
		if (min1 >= min2)
		{
			min = min1 - min2;
			if (hour1 >= hour2)hour = hour1 - hour2;
			else hour = hour1 - hour2 + 24;
		}
		else
		{
			min = min1 - min2 + 60;
			if (hour1 - hour2 - 1 >= 0)hour = hour1 - hour2-1;
			else hour = hour1 - hour2 + 24-1;
		}
		if (hour >= 0 && hour < 10)
		{
			if (min >= 0 && min < 10)
				cout << '0' << hour << ":0" << min << endl;
			else
				cout << '0' << hour << ':' << min << endl;
		}
		else
		{
			if (min >= 0 && min < 10)
				cout << hour << ":0" << min << endl;
			else
				cout << hour << ':' << min << endl;
		}
	}
	return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值