
Era o noapte calmă de noiembrie, iar Parisul dormea sub o ploaie subțire. Doar lumina palidă a felinarelor se oglindea în Sena, tremurând ca o respirație. În umbra muzeului Luvru, un tânăr cu ochi limpezi și pași ușori pășea hotărât: Ciprian, un hoț neobișnuit.
Își spusese mereu că fiecare obiect are o poveste, un loc potrivit. Unele lucruri merită păstrate aproape de inimă, altele pot fi dăruite, împărțite cu lumea. Așa că, în noaptea aceea, Ciprian nu fura la întâmplare, ci alegea cu grijă. De la un colț la altul, printre statui și pânze, aduna amintiri: o mănușă de dantelă dintr-un portret vechi, o cheie ruginită, o bijuterie ascunsă sub praf. Pe fiecare o privea o clipă și o punea în sac.
Dar Ciprian nu era singur. La ieșire îl aștepta Șeful: "Din ceea ce-mi aduci, nimic nu trebuie să semene. Vreau doar lucruri diferite."
Din toate minunile furate, trebuia să aleagă cât mai mult, dar fără să repete nimic. Așa că, pe marginea Senei, la adăpostul unui pod, a început să sorteze. Unele lucruri le-a păstrat, erau prea dragi, prea pline de sens. Altele le-a oferit, fără regret, cu o liniște aproape frumoasă.
Când s-a luminat de ziuă, Parisul s-a trezit fără o bijuterie, dar mai bogat cu o poveste. Ciprian dispăruse, iar în fața muzeului a rămas doar un bilet, scris cu cerneală albastră:
Nu am luat tot ce am putut.
Am luat doar cât era drept.
Se spune că de atunci, în unele nopți de primăvară, când plouă ușor, poți zări o umbră traversând curtea Luvrului. Nu lasă urme, doar o armonie ciudată între ceea ce lipsește și ceea ce rămâne.
Cerință
Sunt lovituri (independente) pe care Ciprian (maestru al furtului discret) le dă. Fiecare lovitură este descrisă astfel:
Se dau obiecte, fiecare obiect având anumite caracteristici. Al -lea obiect are următoarele caracteristici:
- reprezintă tipul acestuia (un număr natural);
- reprezintă dacă Ciprian dorește obiectul () sau îl poate preda ().
Pentru fiecare tip de obiect, fie acesta , definim:
- câte obiecte de tipul a strâns;
- câte obiecte de tipul a strâns și pe care le poate preda fără resentimente.
Pentru fiecare tip se alege o cantitate , unde , astfel încât toate valorile nenule ale lui sunt distincte (doar se poate repeta, în rest trebuie să fie distincte).
Trebuie maximizată suma tuturor elementelor șirului (numărul total de obiecte predate), pe care o vom nota cu . Dintre toate alegerile cu maxim se va alege cea care maximizează numărul de obiecte neimportante predate Șefului. Fie această cantitate . este numărul total de obiecte predate șefului și pe care nu îl deranjează pe Ciprian să le dea (câte obiecte din cele predate au ).
Date de intrare
Fișierul de intrare heist.in conține:
- pe prima linie un număr natural nenul , cu semnificația din enunț;
- pe următoarele linii pentru fiecare dintre cele spargeri pe prima linie , reprezentând numărul de obiecte pe care le fură Ciprian, și pe următoarele linii câte o pereche de numere natuarale reprezentând și .
Date de ieșire
Se vor afișa în fișierul de ieșire heist.out, pe linii, perechile , separate printr-un spațiu, fiecare pereche pe o linie separată, reprezentând răspunsurile pentru cele spargeri.
Restricții și precizări
- ;
- Suma lui pe toate cele lovituri nu va depăși ;
- .
Exemplu
heist.in
5
8
1 0
4 1
2 0
4 1
5 1
6 1
3 0
2 0
4
1 1
1 1
2 1
2 1
9
2 0
2 0
4 1
4 1
4 1
7 0
7 1
7 0
7 1
5
1 0
1 0
1 1
2 0
3 1
6
1 0
1 0
1 0
2 1
2 1
3 1
heist.out
3 3
3 3
9 5
4 2
6 3