文理学院程序设计在线练习


字幕

Time Limit: 1 Second(s)    Memory Limit: 32 MB

Total Submission(s): 94   Accepted Submission(s): 43
Problem Description

也许你爱看电影,经常从网上下载电影,如果是外国片子,一般还需要配备字幕文件。当然网上的字幕资源较多,一般总是可以找到相关电影的字幕,但是如果字幕的版本与电影不配套,就会出现字幕与电影不同步的情况,有时候是延迟,有时候是提前。


为了解决字幕与电影不同步的问题, 就需要请你写个程序修改一下srt文件中的时间标签。
srt格式的字幕文件比较流行,下面是srt文件开头的一段内容(源自电影 [十二怒汉] 12 Angry Men):
1 
00:00:54,186 --> 00:00:57,212 
地方法院 

2 
00:01:11,870 --> 00:01:15,135 
你做的很好,非常好 

3 
00:01:21,747 --> 00:01:27,049 
漫长复杂的审理程序已经结束,这是一宗一级谋杀案 

显然, srt格式的字幕文件是由“ 编号,时间标签,显示文字 ”三部分组成,其中时间格式为:时:分:秒,毫秒。
因此,若要调整时间,只需调整时间标签即可。假如上面的字幕文件在实际播放时提前了20秒,我们就可以推迟时间标签,推迟20秒后的内容如下:
1 
00:01:14,186 --> 00:01:17,212 
地方法院 

2 
00:01:31,870 --> 00:01:35,135 
你做的很好,非常好 

3 
00:01:41,747 --> 00:01:47,049 
漫长复杂的审理程序已经结束,这是一宗一级谋杀案 

为了简化我们的问题,这里忽略序号和字幕内容,只保留时间标签(并且忽略毫秒)。
时间格式固定为:hh:mm:ss, 分别代表时,分,秒 (长度分别为2位)

Input

输入数据首先包含一个整数T,表示测试实例的个数,然后是T组测试数据。
对于每组测试数据,输入数据首先包含整数n(1<=n<=100)和需要调整的时间t,分别表示需要调整的标签数量,以及每个标签需要变动的时间误差。其中t的格式符合前面描述的时间格式。若t前面冠以“+”,表示需要推迟时间,若t前面冠以“-”,,表示需要推迟时间。然后是n行时间标签,分别表示开始和结束时间,中间用符号" --> "分隔。
我们保证输入的时间是合法的(24小时制时间格式),且调整前后的时间均小于等于23:59:59。

Output

输出调整后的内容,每组数据输出后加上一个空行。若调整后的时间为负,直接显示全0。详见 Sample.

Sample Input
2
3 +00:00:20
00:00:54 --> 00:00:57
00:01:11 --> 00:01:15
00:01:21 --> 00:01:27
3 -00:00:55
00:00:54 --> 00:00:57
00:01:11 --> 00:01:15
00:01:21 --> 00:01:27
Sample Output
00:01:14 --> 00:01:17 
00:01:31 --> 00:01:35 
00:01:41 --> 00:01:47

00:00:00 --> 00:00:02 
00:00:16 --> 00:00:20 
00:00:26 --> 00:00:32
Author

flx

Source

zscas第三届程序设计竞赛网络预赛