Mini-Burac alături de Elefantul Marcici fac ravagii în oraș...
Cerință
Vi se dă un cuvânt format din litere ale alfabetului latinesc și intervale ce reprezintă subsecvențe ale acestui cuvânt.
Cuvântul se numește magic doar dacă fiecare subsecvență dintre cele are toate literele, care sunt vizibile, distincte.
La început, toate literele sunt vizibile.
Totuși, la fiecare moment de timp (), a -a litera este acoperită, și nu mai este astfel vizibilă. Se garantează că este o permutare a numerelor de la la .
Aflați după al cătelea moment de timp cuvântul va deveni magic (posibil , adică string-ul era magic înainte să se înceapa acoperirea de litere).
Date de intrare
Pe prima linie a fișierului de intrare magice.in
se găsește un cuvânt de litere latinești.
Pe următoarea linie se găsește numărul de intervale .
Pe următoarele linii se găsesc perechi de forma (), semnificând subsecvențele din cerință.
Pe ultima linie se găsesc numere, reprezentând permutarea .
Date de ieșire
Pe prima linie a fișierului de ieșire magice.out
se va găsi un singur număr între și , reprezentând momentul de timp la care cuvântul dat devine magic.
Restricții și precizări
- Pentru puncte,
- Pentru încă puncte,
- Pentru încă puncte, cuvântul dat va fi compus doar din litera
a
Exemplul 1
magice.in
aaaaa
2
1 2
4 5
2 4 1 5 3
magice.out
2
Exemplul 2
magice.in
abbabaab
3
1 3
4 7
3 5
6 3 5 1 4 2 7 8
magice.out
5
Explicație
Evoluția cuvântului (începând cu momentul de timp 0)
abbab#ab
ab#ab#ab
ab#a##ab
#b#a##ab
#b####ab
######ab
#######b
########
Exemplul 3
magice.in
abcd
1
1 4
1 2 3 4
magice.out
0