Miki și Andrei s-au reunit, cu ajutorul vostru, fix înainte de ziua de Halloween și vor să se distreze împreună în spiritul acestei sărbători. Andrei a găsit în castelul său o carte cu numere de telefon și acum îi propune lui Miki să facă farse la telefon și să sperie oamenii ce le răspund.
Lui Miki îi place ideea, dar propune să facă acest lucru într-un mod cât mai puțin costisitor.
Pe prima pagină a cărții se află informațiile celor centrale telefonice disponibile, adică prefixul pe care îl deservesc (un șir de cifre ) și costul pentru a suna la centrala respectivă (un număr natural ). O centrală poate fi folosită pentru a apela orice număr de telefon care începe cu prefixul acelei centrale.
După primele câteva încercări, Miki și Andrei descoperă un secret, anume că centralistele cu prefixe similare sunt prietene între ele și sunt dispuse să le facă legătura la o altă centrală, dar pentru un cost, evident. Prin urmare, dacă cei doi vor de la o anumită centrală să fie conectați la altă centrală , aceștia trebuie să plătească unde plecând de la prefixul , câte cifre trebuie șterse de la final câte cifre trebuie apoi adăugate la final pentru a obține prefixul . În alte cuvinte, de câte operații este nevoie într-un editor text care permite doar scriere la final și tasta backspace pentru a îl transforma pe în (pentru că asta este ce are de făcut centralista ca să redirecționeze apelul).
Cerință
Se dau prefixele și costul pentru fiecare operație. Miki și Andrei aleg aleator din carte numere de telefon și vă roagă să le aflați costul minim de a face farse acestor numere.
Date de intrare
Pe prima linie a intrării se află , și . Pe fiecare dintre următoarele linii se găsesc un șir de cifre și un întreg pozitiv , separate printr-un spațiu, reprezentând prefixul și costul celei de-a -a centrale.
Pe următoarele linii se află câte un număr de telefon reprezentat de un șir de cifre.
Date de ieșire
Afișați linii, fiecare conținând câte un număr întreg, al -lea dintre acestea reprezentând costul minim de apelare al -lealui număr de telefon din intrare, dacă numărul respectiv poate fi apelat, sau în caz contrar.
Restricții și precizări
- , unde suma lungimilor prefixelor
- , unde suma lungimilor numerelor de telefon
- pentru
- Nu există niciun prefix mai lung decât un număr de telefon
# | Punctaj | Restricții |
---|---|---|
1 | 13 | |
2 | 21 | , , |
3 | 17 | |
4 | 12 | Oricare ar fi două centrale , , fie este prefix al , fie invers |
5 | 37 | Fără restricții adiționale. |
Exemplu
stdin
5 4 2
0722 5
0213 2
02 7
902 10
07 2
072212352423
021435246
9022432342
90358293022
stdout
2
6
10
-1
Explicație
Pentru numărul de telefon folosim prefixul de cost .
Pentru numărul de telefon plecăm de la prefixul pe care îl modificăm astfel:
- Ștergem
- Adăugăm la final
și ajungem la prefixul . Cele două operații costă în total și adunat cu costul prefixului avem un cost total de .
Pentru numărul de telefon folosim prefixul de cost .
Pentru numărul de telefon nu avem niciun prefix care să se potrivească.
Note asupra ediției
În caz că vă plictisiți încercând să rezolvați această problemă, am decis să vă includem și câteva exemple de farse jucate de Miki și Andrei. Nu sunt neapărat bune, dar sperăm că vă veți bucura de ele:
- "Alo, vă merge frigiderul? ...Atunci fugiți după el să nu ajungă prea departe"
- "Alo, avem nevoie de ajutor. Goblinul Ragnok s-a îndrăgostit de paladina noastră, dar nu are suficiente aura points pentru a o cuceri. Îi puteți dona câteva?"
- "Buna ziua, un porc mistreț înflăcărat a fost văzut dând târcoale prin zona dvs. Baricadați bine ușile și ferestrele și păziți-vă fiicele."
- "Nu ați aflat încă de cea mai nouă modă glamour leopard? Este foarte simplu, vă puteți programa chiar acum pentru un transplant de blană autentică!"
- "Bună ziua, strângem daruri pentru nunta lui Dracula... Vă rugăm nu dați țepe!"
- "[într-un growl agresiv] Don't lock the door on me...[apoi continuând pe un ton foarte politicos] pentru a continua programul nesolicitat de death metal, apăsați tasta 1"
- "Bună ziua, vă contactăm pentru un sondaj de opinie în legătură cu produsele de panificație pe care le-ați primit recent. Le găsiți prea ațoase ați zis? Păi normal, doar sunt făcute din croșet!!!"