AT_tenka1_2015_qualA_b stepモード
Description
[problemUrl]: https://atcoder.jp/contests/tenka1-2015-quala/tasks/tenka1_2015_qualA_b
アンドウくんは、 $ N $ 個のスクリプトを実行し、実行開始時刻と実行終了時刻を記録しました。
しかしこの日、アンドウくんの時計は $ 1000 $ ミリ秒巻き戻るという事象が一度発生しました。
もしかすると、スクリプトの実行時間がわからなくなってしまったかもしれません。
実行開始時刻と実行終了時刻のリストが与えられるので、各スクリプトの実行時間を計算し、ミリ秒単位で出力してください。
ただし、以下の点に注意してください。
- 実行時間が一意に定まらないスクリプトに対しては`-1`を出力してください。
- スクリプトの実行時間はいずれも $ 1 $ ミリ秒以上でした。
- 巻き戻りは瞬間的な事象であり、巻き戻りにかかる時間は $ 0 $ ミリ秒です。
- 実行開始時刻と実行終了時刻について丸めは起こらないものとし、実行開始時刻と実行終了時刻のミリ秒未満の位の値はすべて $ 0 $ であるとします。
つまり、実行開始時刻および実行終了時刻をミリ秒単位で表した値 $ t $ に関して、 $ t $ は整数であることが分かっています。
- 巻き戻りの発生時刻のミリ秒未満の値は $ 0 $ ではありません。
つまり、巻き戻りの発生時刻をミリ秒単位で表した値 $ r $ に関して、 $ r $ は整数**でないこと**が分かっています。
よって、巻き戻りの発生時刻は、実行開始時刻および実行終了時刻と同時刻ではありません。
- 夏時間はありません。
Input Format
入力は以下の形式で標準入力から与えられる。
> $ N $ $ S_1 $ $ E_1 $ : $ S_N $ $ E_N $
- スクリプトの数 $ N $ ( $ 1\ \leq{}\ N\ \leq{}\ 100 $ ) が $ 1 $ 行で与えられる。
- 続く $ N $ 行には各スクリプトの実行の開始時刻 $ S_i $ と終了時刻 $ E_i $ が空白区切りで与えられる。
- $ S_i $, $ E_i $ の形式は、`HH:MM:SS.mmm`である。ただし、 `H`, `M`, `S`, `m` は数字 $ 1 $ 文字を表す。
また、 `21`$ {}\leq{} $`HH`$ \leq $`22`, `00`$ {}\leq{} $`MM`$ \leq $`59`, `00`$ {}\leq{} $`SS`$ \leq $`59`, `000`$ {}\leq{} $`mmm`$ \leq $`999` である。
- $ 2 $ 回以上巻き戻りが発生するといった、問題の条件を満たさない入力は与えられない。
Output Format
スクリプトの実行時間をミリ秒単位で $ N $ 行に出力せよ。
ただし、実行時間が一意に定まらないスクリプトに対しては`-1`を出力せよ。
出力の末尾に改行を入れること。
Explanation/Hint
### 配点
この問題には部分点が設定されていない。全てのテストケースに正解した場合は、 $ 50 $ 点が与えられる。
### Sample Explanation 1
スクリプトの終了時刻が開始時刻より前になっているので、実行中に巻き戻りが発生したことが分かります。
### Sample Explanation 2
スクリプトの実行中に巻き戻りが発生したかどうか特定できません。 発生していた場合は $ 4000 $ ミリ秒、発生していなかった場合は $ 3000 $ ミリ秒になります。
### Sample Explanation 3
$ 2 $ つ目のスクリプトから、巻き戻り前の時間軸で`21:00:01.500`より後、`21:00:02.000`より前に巻き戻ったことが分かります。 !\[\](http://tenka1.klab.jp/2015/images/b7f72704a8bc78d22cb2ccb26a88375c431c7532.png)
### Sample Explanation 4
入力例3と同様に、 $ 2 $ つ目のスクリプトから、巻き戻り前の時間軸で`21:00:01.500`より後、`21:00:02.000`より前に巻き戻ったことが分かります。 しかし、$ 3 $つ目のスクリプトの終了時刻が、巻き戻り前の時間軸での記述なのか巻き戻った後の記述なのかの判断ができません。