Diferente pentru problema/reversez intre reviziile #2 si #3

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="reversez") ==
Considerăm un alfabet cu _Sigma_ caractere. Notam _lcp(S, P)_ = cel mai lung prefix comun dintre un string S şi un string P. Pentru un string S o să notăm SuffixS[i] = sufixul stringului S care începe la poziţia i. Având stringul S, o să creăm şirul _A[i] = lcp(S, SuffixS[i])_.
Considerăm un alfabet cu $Sigma$ caractere. Notam $lcp(S, P)$ = cel mai lung prefix comun dintre un string $S$ şi un string $P$. Pentru un string $S$ o să notăm $SuffixS[i]$ = sufixul stringului $S$ care începe la poziţia $i$. Având stringul $S$, o să creăm şirul $A[i] = lcp(S, SuffixS[i])$.
h2. Cerinta
Cunoscând şirul _A_ şi lungimea alfabetului _Sigma_, să determine câte stringuri S generează sirul A.
Cunoscând şirul $A$ şi lungimea alfabetului $Sigma$, să determine câte stringuri $S$ generează sirul $A$.
h2. Date de intrare
Pe prima linie a fişierului de intrare *reversez.in* se vor afla doua numere naturale N şi Sigma, cu semnificaţia din enunţ.
Pe linia 2 se vor afla N numere naturale reprezentând şirul A.
Pe prima linie a fişierului de intrare *reversez.in* se vor afla doua numere naturale $N$ şi $Sigma$, cu semnificaţia din enunţ.
Pe linia 2 se vor afla $N$ numere naturale reprezentând şirul $A$.
h2. Date de ieşire
În fişierul de ieşire *reversez.out* veţi afişa un singur număr natural reprezentând numărul de stringuri S cerut, _modulo 666013_.
În fişierul de ieşire *reversez.out* veţi afişa un singur număr natural reprezentând numărul de stringuri $S$ cerut, $modulo 666013$.
h2. Restricţii
* 1 ≤ N ≤ 300 000
* 1 ≤ Sigma ≤ 100 000
* $1 ≤ N ≤ 300 000$
* $1 ≤ Sigma ≤ 100 000$
* Numărul de soluţii va fi cel puţin 1.
h2. Exemplu

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.