P7374 [COCI 2018/2019 #5] Titlovi

题目描述

现有一个 `.SRT` 类型的文件,其由若干段字幕组成,用来再观看时载入。每段字幕又由三部分组成: - 第一行:该字幕的编号 - 第二行字幕开始播放时间 --> 字幕结束播放时间 - 接下来的若干行:字幕内容 下面是一段字幕的例子: ```plain 1 00:00:01,600 --> 00:00:04,200 Good day! 2 00:00:05,900 --> 00:00:07,999 Good day to you too! Here you go! 3 00:00:10,000 --> 00:00:14,000 May I please have ten garlic sausages? ``` 时间均以 `HH:MM:SS,TTT` 格式给出,分别表示小时、分钟、秒和毫秒。规定 $1$ 秒 $=1000$ 毫秒。 有时观看时会出现时间上的差异,因此在载入字幕时需要将所有字幕调快 / 调慢一个特定的时间,并输出调整后的 `.SRT` 文件。

输入格式

输入不超过 $100$ 行,表示 `.SRT` 类型文件的内容。 每一段字幕的第一行,输入字幕编号。对于字幕编号,若第一段的编号为 $X$,则第 $i$ 段的必定为 $X+i-1$。 每一段字幕之间用一个空行隔开。字幕内容包含英文字母、空格和字符 `,.?!.` 等。 最后一段字幕的最后一行之后的一行,将包含一个字符 `#`,表示字幕部分结束。 接下来的一行 / 输入的最后一行,输入整数 $T$,表示需要调整的时间。如果 $T \ge 0$,则表示要将字幕时间向后调整 $T$ 毫秒。否则,表示要将字幕时间向前调整 $-T$ 毫秒。

输出格式

输出调整时间后的 `.SRT` 文件。

说明/提示

#### 数据规模与规定 对于 $100\%$ 的数据,$-10^4 \le T \le 10^4$。 #### 说明 **本题分值按 COCI 原题设置,满分 $50$。** 注:经测试,官方输入文件中可能含有 `\r` 等 Windows 下产生的字符。请大家在处理的过程中留意! **题目译自 [COCI2018-2019](https://hsin.hr/coci/archive/2018_2019/) [CONTEST #5](https://hsin.hr/coci/archive/2018_2019/contest5_tasks.pdf) _T1 Titlovi_。**