== include(page="template/taskheader" task_id="raci") ==
Poveste şi cerinţă...
Se da un numar $N$ si $N$ cuvinte formate doar din litere mici ale alfabetului englez.
h2. Cerinţă
Sa se calculeze cel mai lung subsir de cuvinte din sirul initial ce respecta urmatoarele proprietati :
* Pentru orice $i$ , $1 ≤ i ≤ M-1$ , ultimul caracter al lui $C ~i~$ este egal cu primul caracter al lui $C ~i+1~$
* Pentru orice $i$ , $1 ≤ i ≤ M-1$ , $P ~i+1~ - P ~i~ ≤ K$ , pentru un $K$ dat
Unde $M$ este lungimea noului sir rezultat , $C ~i~$ este cuvantul aflat pe pozitia $i$ in noul sir si $P ~i~$ este pozitia pe care se afla cuvantul $C ~i~$ in sirul initial.
h2. Date de intrare
Fişierul de intrare $raci.in$ ...
Fişierul de intrare $raci.in$ va contine pe prima linie doua valori $N$ si $K$ cu semnificatia din enunt.
Pe a doua linie din fisier se vor afla cele $N$ cuvinte separate intre ele prin exact un spatiu.
h2. Date de ieşire
În fişierul de ieşire $raci.out$ ...
În fişierul de ieşire $raci.out$ se va afis o singura valoare reprezentand lungimea celui mai lung subsir de cuvinte care respecta cele doua proprietati specificate in enunt.
h2. Restricţii
* $... ≤ ... ≤ ...$
* $1 ≤ N ≤ 100 000$
* $1 ≤ K ≤ N$
* $2 ≤ lungimea oricarui cuvant ≤ 10$
h2. Exemplu
table(example). |_. raci.in |_. raci.out |
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
|
| 10 3
aa ab bc dd db be ff fg eh gi hj
| 5
|
h3. Explicaţie
...
Cel mai lung subsir este: $aa ab bc **dd** **db** **be** ff fg **eh** gi **hj**$ .
== include(page="template/taskfooter" task_id="raci") ==
== include(page="template/taskfooter" task_id="raci") ==