Time limit: 0.02s
Memory limit: 2MB
Input: subtitrare.in
Output: subtitrare.outPoints by default: 10p
Gabriel şi-a cumpărat un dvd-player care poate afişa pentru filme subtitrările în format „sub”. El are şi filme cu subtitrări în format „srt” şi doreşte să transforme aceste fişiere în format „sub”.
Subtitrările în format „srt” sunt compuse din una sau mai multe secţiuni separate prin câte o linie vidă. Fiecare secţiune are următoarea structură:
- pe prima linie din cadrul secţiunii se află un număr natural ce reprezintă numărul secţiunii (secţiunile fiind numerotate începând cu );
- pe a doua linie din cadrul secţiunii se află un text de forma:
ce reprezintă timpul la care începe afişarea subtitrării din secţiunea curentă, urmat de timpul la care dispare subtitrarea din secţiunea curentă ( este ora, este minutul, este secunda, iar reprezintă miimea de secundă), cei doi timpi fiind separaţi prin (un spaţiu, două caractere minus, urmate de caracterul > şi încă un spaţiu); - pe următoarele linii din secţiune se află, pe una sau mai multe linii, textul subtitrării care va fi afişat.
În formatul "sub" fiecare secţiune va fi convertită într-o singură linie de forma:
unde reprezintă frame-ul la care începe afişarea subtitrării curente, reprezintă frame-ul la care dispare subtitrarea curentă, iar text reprezintă textul subtitrării din cadrul secţiunii corespunzătoare. Dacă în formatul "srt" existau mai multe linii de text în subtitrare, atunci în formatul "sub" acestea vor fi scrise pe aceeaşi linie, separate prin caracterul '|'.
Un film este alcătuit dintr-o succesiune de imagini denumite frame-uri, acestea fiind numerotate de la la numărul total de frame-uri. Toate filmele pe care le are Gabriel au de frame-uri/secundă, adică într-o secundă se vor vizualiza de frame-uri. , respectiv se calculează prin transformarea celor doi timpi de forma în secunde, după care se înmulţesc cu şi apoi se reţine partea întreagă.
De exemplu,
Cerinţă
Scrieţi un program care să convertească o subtitrare din format „srt” în format „sub”.
Date de intrare
Fişierul de intrare subtitrare.in
conţine subtitrarea unui film în format „srt”.
Date de ieşire
Fişierul de ieşire subtitrare.out
va conţine subtitrarea filmului în format „sub”.
Restricţii şi precizări
- Fişierul de intrare conţine maxim de linii.
- Liniile fişierului de intrare conţin maxim de caractere din codul ASCII.
- O secţiune poate avea oricâte linii de text, iar numărul maxim de secţiuni este .
- În fişierul de ieşire nu sunt admise linii vide sau spaţii suplimentare (altele decât cele existente în textul subtitrării în format "srt").
Exemplu
subtitrare.in
1
00:00:02,000 --> 00:00:08,000
Ce faci la Jakarta?
Cauti o slujba?
2
00:01:58,720 --> 00:02:01,029
Invata din greselile mele.
subtitrare.out
{50}{200}Ce faci la Jakarta?|Cauti o slujba?
{2968}{3025}Invata din greselile mele.
Explicație
- ;
- ;
- ;
- ;