Yamada, cel mai bun jucător al jocului Forest of Savior, se pregătește pentru a participa într-o bătălie împreună cu coechipierii săi. Pentru a câștiga această luptă, Yamada trebuie să se folosească de diverse obiecte magice pe care le-a obținut de-a lungul timpului.
Obiectele cu puteri magice ale lui Yamada sunt de trei tipuri:
- Cărți de vrăji. Dacă personajul are puterea și citește o carte de putere magică , atunci puterea personajului va deveni .
- Poțiuni. Dacă personajul are puterea și bea o poțiune de putere magică , atunci noua lui putere va fi .
- Nestemate. Dacă personajul are puterea și sparge o piatră prețioasă de putere magică , atunci noua putere obținută va fi .
Personajul lui are o putere inițială , iar fiecare dintre aceste obiecte, după ce este folosit, îi va schimba puterea acestuia în mod ireversibil. De exemplu, dacă personajul lui Yamada începe cu puterea inițială , după folosirea unei poțiuni de putere magică puterea personajului crește și devine egală cu . Utilizarea ulterioară a unei cărți de vrăji de putere magică îi va crește personajului puterea la .
Yamada își poate folosi obiectele în orice ordine, dar fiind copleșit de numărul de moduri în care își poate folosi obiectele, vă cere ajutorul vostru!
Cerință
Ajutați-l pe Yamada să determine:
- Dintre toate obiectele avute la dispoziție, care este cea mai puternică carte de vrăji, care este cea mai puternică poțiune și care este cea mai puternică nestemată.
- În ce ordine ar trebui să se folosească de obiectele magice astfel încât, la final, puterea personajului său să fie maximă.
- Care este puterea maximă pe care o poate atinge personajul său. Fiindcă acest număr poate fi foarte mare, Yamada vrea doar să afle care ar fi restul împărțirii acestui număr la .
Date de intrare
Pe prima linie din fișierul de intrare apgreid.in
se va află valoarea , care reprezintă cerința care trebuie rezolvată și poate avea una din valorile , sau .
Pe următoarea linie se află numerele naturale și , reprezentând, în ordine, numărul total de obiecte pe care le are Yamada, respectiv puterea inițială a personajului său.
Pe fiecare dintre următoarele linii, se află descrierea câte unui obiect magic. Linia () conține un caracter de tip literă , care reprezintă tipul obiectului (c
— carte de vrăji, p
— poțiune și n
— nestemată) și un număr , reprezentând puterea magică în funcție de tipul obiectului. Valorile și sunt despărțite printr-un spațiu.
Date de ieșire
Pentru cerința , pe prima linie a fișierului de ieșire apgreid.out
se vor afișa trei numere naturale reprezentând, în ordine, cea mai mare puterea magică a unei cărți de vrăji, a unei poțiuni respectiv a unei nestemate.
Pentru cerința , în fișierul de ieșire se vor afișa pe linii diferite perechile de caractere și numere, reprezentând tipul și puterea obiectelor în ordinea în care Yamada ar trebui să le folosească pentru a maximiza puterea personajului său. Fiecare linie va conține un caracter (care va fi unul dintre c
, p
sau n
) separat printr-un spațiu de un număr care reprezintă puterea magică a obiectului respectiv. Dacă există mai multe moduri de a obține puterea maximă, oricare dintre ele va fi considerat corect.
Pentru cerința , pe prima linie a fișierului de ieșire se va afișa un număr întreg, reprezentând restul împărțirii puterii maxime pe care o poate atinge personajul lui Yamada la .
Restricții și precizări
c
n
p
pentru orice- pentru orice
- Dacă , atunci Yamada are cel puțin un obiect magic din fiecare din cele trei tipuri.
# | Punctaj | Restricții |
---|---|---|
1 | 19 | |
2 | 13 | , |
3 | 17 | |
4 | 9 | , , |
5 | 11 | , |
6 | 12 | , |
7 | 19 |
Exemplul 1
apgreid.in
1
6 3
p 1
n 3
c 10
n 2
p 12
p 8
apgreid.out
10 12 3
Exemplul 2
apgreid.in
2
2 3
c 3
p 2
apgreid.out
p 2
c 3
Exemplul 3
apgreid.in
3
2 3
p 2
c 3
apgreid.out
125