Pagini recente » Diferente pentru problema/harbingers intre reviziile 10 si 8 | Solutii Algoritmiada 2010 Runda 1 | Diferente pentru problema/dubi intre reviziile 55 si 32 | Diferente pentru problema/jupanul intre reviziile 25 si 73 | Diferente pentru problema/pmk intre reviziile 32 si 36
Diferente pentru
problema/pmk intre reviziile
#32 si
#36
Diferente intre titluri:
Diferente intre continut:
Algoritmul KMP este folosit pentru a cauta eficient aparitiile unui cuvant intr-un text.
In prima faza el calculeaza functia prefix pentru orice prefix al cuvantului.
Pentru un sir ea are ca rezultat lungimea celui mai lung prefix propriu care este si sufix (propriu) al sirului. Un prefix propriu al unui sir e un prefix diferit de sir (sirul intreg nu e prefix propriu).
Ca si conventie de implementare, rezultatul functiei prefix retinut pe pozitia **i** este functia pentru prefixul de la prima pozitia pana la pozitia **i** **exclusiv**, iar pentru prima pozitie se considera ca functia returneaza -1. Un exemplu de functie prefix poate fi urmatorul:
Pentru un sir functia are ca rezultat lungimea celui mai lung prefix propriu care este si sufix (propriu) al sirului. Un prefix propriu al unui sir e un prefix diferit de sir (sirul intreg nu e prefix propriu).
Ca si conventie de implementare, rezultatul functiei prefix retinut pe pozitia **i** este functia pentru prefixul de la prima pozitia pana la pozitia **i** **exclusiv**, iar pentru prima pozitie se considera ca functia returneaza -1. Un exemplu pentru valorile functiei prefix este urmatorul:
| **i** (indexat de la 0)
| 0
h2. Date de intrare
Fişierul de intrare $pmk.in$ contine o singura linie cu **N**: lungimea sirului urmat de **N** numere, valori valide pentru functia prefix a unui sir de lungime **N**.
Fişierul de intrare $pmk.in$ contine o singura linie cu numarul **N**, lungimea sirului urmat de **N** numere, valori valide pentru functia prefix ale unui sir de lungime **N**.
h2. Date de ieşire
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.