Burger

Time limit: 1s Memory limit: 16MB Input: burger.in Output: burger.out

Adi tocmai ce și-a deschis un restaurant fast-food, unde se servesc numai burgeri. Pentru a începe afacerea, Adi a gătit în prima zi xx burgeri clasici, yy cheeseburgeri și zz burgeri vegani.

Adi, fiind un mare afacerist, își dorește ca restaurantul să funcționeze într-o manieră foarte strictă, iar servirea clienților să se facă după niște reguli bine definite. Pentru fiecare client, el creează un meniu unic. Meniul este creat ca o selecție de burgeri pe care acesta îi va servi, conform următoarelor reguli:

  • Fiecare client primește cel puțin un burger (de orice fel), adică meniul nu este gol;
  • Fiecare client poate primi maxim un burger din fiecare fel, adică meniul nu are mai mult de un burger din fiecare fel;
  • Fiecare client trebuie să aibă o mulțime de burgeri diferită de ceilalți, adică meniul, care reprezintă o submulțime a tipurilor de burgeri, să fie unic pentru fiecare client.

Care este numărul maxim de clienți pe care îi poate servi Adi?

Cerință

Cunoscând xx, yy, zz se cere:

  1. Numărul total de burgeri pe care Adi îi are la dispoziție.
  2. Numărul maxim de clienți pe care îi poate servi Adi.

Date de intrare

Pe prima linie a fișierului de intrare burger.in se găsește un număr întreg, CC.
Pe cea de-a doua linie se găsește TT, numărul de teste pentru problemă.
Pe următoarele TT linii, se găsesc xx, yy și zz, reprezentând numărul de burgeri de fiecare tip.

Date de ieșire

Dacă C=1C = 1, în fișierul de ieșire burger.out se vor afișa TT numere, fiecare pe câte o linie separată, reprezentând numărul total de burgeri pentru fiecare dintre teste.
Dacă C=2C = 2, în fișierul de ieșire burger.out se vor afișa TT numere, fiecare pe câte o linie separată, reprezentând numărul maxim de clienți ce pot fi serviți pentru fiecare dintre teste.

Restricții și precizări

  • 1T5001 \leq T \leq 500;
  • 1x,y,z101 \leq x, y, z \leq 10;
  • C{1,2}C \in \{ 1, 2 \} \rarr reprezintă cerința la care trebuie răspuns în cele TT teste;
  • Pentru rezolvarea corectă a cerinței 11 se vor acorda 2020 de puncte.;
  • Pentru rezolvarea corectă a cerinței 22 se vor acorda 8080 de puncte.

Exemplul 1

burger.in

1
7
1 2 1
0 0 0
9 1 7
2 2 3
2 3 2
3 2 2
4 4 4

burger.out

4
0
17
7
7
7
12

Exemplul 2

burger.in

2
7
1 2 1
0 0 0
9 1 7
2 2 3
2 3 2
3 2 2
4 4 4

burger.out

3
0
4
5
5
5
7

Explicație

Pentru C=1C = 1, se calculează numărul total pentru fiecare test (1+2+1=41 + 2 + 1 = 4, 9+1+7=179 + 1 + 7 = 17, \dots).

Pentru C=2C = 2, în primul test Adi poate forma cele 33 mulțimi: {\{burger clasic}\}, {\{cheeseburger}\}, {\{cheeseburger, burger vegan}\}. În al treilea test poate forma următoarele 44 meniuri: {\{burger clasic, cheeseburger, burger vegan}\}, {\{burger clasic}\}, {\{burger vegan}\}, {\{burger clasic, burger vegan}\}. Deși nu s-au folosit toate produsele, Adi nu mai poate servi alți clienți.

Log in or sign up to be able to send submissions!