Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | strigat.in, strigat.out | Sursă | Summer Challenge 2007, runda 1 |
Autor | Din Folclor | Adăugată de | |
Timp execuţie pe test | 0.275 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Strigat
La insistentele aghiotantului sau Arthur, Tick s-a decis sa renunte la strigatul sau de lupta "Lingura". Tick vrea ca strigatul sau sa fie cat mai inspaimantator pentru rafacatorii din oras. Tick stie ca exista M cuvinte care ii sperie pe raufacatori si care daca se vor afla in cadrul strigatului sau provoaca un anumit grad de spaima. Se cunoaste pentru fiecare cuvant gradul de spaima pe care il provoaca Ai. Gradul total de spaima al strigatului va fi A1*n1 + A2*n2 + ... + AM*nM, unde ni este numarul de aparitii al cunvatului i in cadrul strigatului. Atentie aparitiile cuvintelor se pot suprapune.
Cerinta
Ajutati-l pe Tick sa isi gaseasca strigat de lupta format din N caractere si care provoaca un grad maxim de spaima.
Date de intrare
Pe prima a fisierului de intrare strigat.in se afla doua numere intregi N si M cu seminificatiile din enunt. Urmeaza apoi M perechi de linii pe prima aflandu-se un cuvant, iar pe a doua gradul de spaima pe care il induce o aparitie a sa.
Date de iesire
Pe prima linie a fisierului de iesire strigat.out se afla gradul maxim de spaima pe care il induce un strigat de lungime N. Pe a doua linie se va afla un strigat care induce gradul respectiv de spaima.
Restrictii
- 1 ≤ N ≤ 100
- 0 ≤ M ≤ 100
- 1 ≤ lungimea unui cuvant ≤ 100
- 0 ≤ Ai ≤ 1000
Exemplu
strigat.in | strigat.out |
---|---|
This is some text written on multiple lines. | This is another text written on multiple lines. |
Explicatie
...