200088 - 考试结束时间

通过次数

13

提交次数

28

时间限制 : 1 秒
内存限制 : 128 MB

已知一场考试的开始时间和持续时间,计算并输出考试的结束时间。注意,考试有可能跨两天。开始时间是 24 小时制。

需要将结束时间转换为 12 小时制,24 小时制和 12 小时制的对应关系如下表所示:

24小时制		12小时制		24小时制		12小时制

0		12(am)		12		12(pm)

1		1(am)		13		1(pm)

2		2(am)		14		2(pm)

3		3(am)		15		3(pm)

4		4(am)		16		4(pm)

5		5(am)		17		5(pm)

6		6(am)		18		6(pm)

7		7(am)		19		7(pm)

8		8(am)		20		8(pm)

9		9(am)		21		9(pm)

10		10(am)		22		10(pm)

11		11(am)		23		11(pm)

输入

你的程序将会接受四个整数,分别表示开始时间的小时 hour、分钟 minute 和秒 second,以及考试持续的秒数。持续秒数不超过 864000 \le hour < 24, 0 \le minute,second < 60

输出

第一行输出三个用冒号分隔的整数和两个字符,分别表示结束时间的小时、分钟、秒和am或pm。

样例

输入

3 5 15 46800

输出

4:5:15pm

输入

23 30 0 7200

输出

1:30:0am

提示

先将经过的秒数加到秒对应的变量 s 上,由于 60 秒为一分钟,因此每 60 秒会向分钟 m 上进位 1 分钟,那么一共会进位 s / 60 分钟,留下 s % 60 秒不够进位。分钟向小时进位也是同样。每 24 小时是一天,h % 24 就是小时向天数进位后剩下的数值。

仔细看时间对应表,我们可以将时间转换关系分为 4 种情况:

  • 0 点对应 12am
  • 1 - 11 点对应 1 - 11 am
  • 12 点对应 12 pm
  • 13 - 23 点对应 1 - 11 pm 使用多路条件分支结构就能处理不同的情况。