Diferente pentru problema/blat intre reviziile #1 si #12

Diferente intre titluri:

blat
Blat

Diferente intre continut:

== include(page="template/taskheader" task_id="blat") ==
Poveste şi cerinţă...
Komisia s-a intalnit pentru a discuta despre cele $M$ probleme propuse la concursul FMICUSTRESS.
Din cele $M$ probleme propuse, are de ales $N$, care se vor da in concurs.
Se stie si ca la concurs s-au inscris $K$ studenti.
 
In mod evident Komisia vrea sa dea probleme cat mai grele ca sa descurajeze studenti, si pentru asta si-a cheltuit toti banii primiti de la sponsori pentru pizza pe o analiza a celor $K$ studenti.
 
Astfel, a primit o matrice cu $K$ linii si $M$ coloane, pozitia $(i, j)$, adica elementul de pe a $i$-a linie si a $j$-a coloana, reprezentand cate puncte ar lua al $i$-lea student pe a $j$-a problema, daca aceasta s-ar da in concurs (ar face parte din setul celor $N$ probleme alese).
 
Pentru un set de probleme, **punctajul studentului** $#i$ este suma punctajelor pe fiecare problema, adica suma elementelor de la $i$-a linie si coloanele corespunzatoare problemelor alese din matricea de mai sus.
**Punctajul total** al unui set de probleme este suma punctajelor fiecarui student.
 
Cum Komisia nu se poate decide ce set de probleme sa aleaga, va cere sa determinati:
 
# Cel mai mare, respectiv cel mai mic **punctaj total** din toate seturile posibil de probleme.
# Cel mai mare, respectiv cel mai mic **punctaj al unui student** din toate seturile posibile de probleme.
 
Daca aveti neclaritati legate de cerinta, uitati-va la primul exemplu.
 
Observatie: Komisiei nu prea ii pasa suma / punctajul maxim care se poate lua pentru ca oricum vrea sa dea probleme cat mai grele, dar iti cere aceasta informatie ca sa nu atraga banuieli.
h2. Date de intrare
Fişierul de intrare $blat.in$ ...
Fişierul de intrare $blat.in$ contine pe prima linie $M$, $N$ si $K$.
Urmeaza $K$ linii, fiecare cu $M$ coloane, reprezentand matricea primita de la analiza studentilor.
h2. Date de ieşire
În fişierul de ieşire $blat.out$ ...
În fişierul de ieşire $blat.out$ se vor afisa $4$ linii.
 
* Prima linie contine **punctajul total** maxim
* A doua linie contine **punctajul total** minim
* A treia linie contine cel mai mare **punctaj al unui student**
* A patra linie contine cel mai mic **punctaj al unui student**
h2. Restricţii
* $... ≤ ... ≤ ...$
* $1 ≤ N, M, K ≤ 100$.
* $N ≤ M$.
* Elementele din matrice sunt numere naturale din intervalul $[0, 100]$.
* Pentru teste in valoare de $20$ de puncte (testele 1-2), fiecare concurent o sa aiba acelasi punctaj pe toate problemele (desi doi concurenti diferiti pot avea punctaje diferite).
* Pentru alte teste in valoare de $30$ de puncte (testele 3-4-5), $1 ≤ N, M, K ≤ 10$
h2. Exemplu
table(example). |_. blat.in |_. blat.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 5 3 4
  10 10 20 20 30
  20 10 20 30 10
  20 20 20 20 20
  30 30 30 30 30
| 280
  240
  90
  40
|
h3. Explicaţie
...
Daca ne-am alege setul de probleme ca fiind ${ 1, 2, 3 }$, punctajul total ar fi $240$, pentru ca:
 
* primul student va avea $40$ de puncte
* al doilea student va avea $50$ de puncte
* al treilea student va avea $60$ de puncte
* al patrulea student va avea $90$ de puncte
 
Pentru a maximiza punctajul total putem alege problemele $3$, $4$ si $5$, punctajul total fiind de $280$.
Pentru a minimiza punctajul total putem sa alegem problemele $1$, $2$ si $3$, punctajul total fiind $240$.
 
Punctajul maxim al unui student este obtinut cand se aleg problemele $1$, $3$ si $5$, concurentul $#4$ obtinand $90p$.
Punctajul minim al unui student este obtinut cand se aleg problemele $1$, $2$ si $4$, concurentul $#1$ obtinand $40p$.
== include(page="template/taskfooter" task_id="blat") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.