Diferențe pentru problema/partitura între reviziile #25 si #26

Nu există diferențe între titluri.

Diferențe între conținut:

== include(page="template/taskheader" task_id="partitura") ==
Amadeus este un mic geniu muzical. El se uită pe o partitură cu note și își dă seama instantaneu de *cheia* partiturii, de *fugă* și *gamă*. Tatăl său este, însă, un om foarte strict și vrea să il verifice, drept care vă roagă pe voi să îl ajutați.
Amadeus este un mic geniu muzical. El se uită pe o partitură cu note și își dă seama instantaneu de *înălțimea* partiturii, de *fugă* și *gamă*. Tatăl său este, însă, un om foarte strict și vrea să il verifice, drept care vă roagă pe voi să îl ajutați.
Dar înainte de aceasta să definim termenii muzicali:
* *Partitura* este un șir de note și pauze. Notele sînt numere naturale nenule, iar pauzele sînt reprezentate cu numărul zero. De exemplu partitura *2 5 7 10 7 3 0 3 5 2 0 0 8 10 13* are 12 note separate de pauze.
* *Cheia* partiturii este media tuturor notelor. Dacă media nu este număr natural se va lua partea întreagă. De exemplu, în partitura anterioară, suma notelor este 75. Împărțind-o la numărul de note, 12, obținem media 6.
* *Înălțimea* partiturii este suma tuturor notelor. De exemplu, în partitura anterioară, suma notelor este 75.
* *Fuga* se calculează astfel: pornind de la prima notă, cîtă vreme notele cresc, vom aduna diferențele între note consecutive în secvență, obținînd un interval de creștere C[~1~]. Apoi partitura descrește și vom considera iar diferențele între note consecutive în secvență obținînd un interval de descreștere D[~1~]. Intervalul de fugă este diferența în valoare absolută dintre suma intervalelor de creștere și a celor de descreștere: I = abs( [C[~1~] + C[~2~] + ... + C[~k~]] - [D[~1~] + D[~2~] + ... + D[~m~]] ). Pe exemplul nostru vom avea trei intervale de creștere și două de descreștere:
** 2 5 7 10 are creșterea (5-2) + (7-5) + (10-7) = 8
** 3 5 are creșterea (5-3) = 2
* *Gama* partiturii se definește astfel: un *acord major* este o secvență de trei note la rînd (A B C) cu proprietățile că A + 3 = B și B + 2 = C. Similar, un *acord minor* este o secvență de trei note la rînd (A B C) cu proprietățile că A + 2 = B și B + 3 = C. În exemplul nostru vom avea un acord major, (2 5 7), precum și două acorduri minore, (5 7 10) și (8 10 13).
h2. Cerință
Dată o partitură determinați *cheia*, *fuga* și *gama*.
Dată o partitură determinați *înălțimea*, *fuga* și *gama*.
h2. Date de intrare
h2. Date de ieșire
În fișierul de ieșire $partitura.out$ se va scrie răspunsul la fiecare cerință, pe linii separate. Astfel, pe prima linie se va scrie *cheia*, pe a doua *fuga* și pe a treia două numere: numărul de acorduri majore și numărul de acorduri minore, separate prin spațiu.
În fișierul de ieșire $partitura.out$ se va scrie răspunsul la fiecare cerință, pe linii separate. Astfel, pe prima linie se va scrie *înălțimea*, pe a doua *fuga* și pe a treia două numere: numărul de acorduri majore și numărul de acorduri minore, separate prin spațiu.
h2. Restricții

Nu există diferențe între securitate.