Atenție! Aceasta este o versiune veche a paginii., scrisă la 2014-01-19 12:01:44.000.
Revizia anterioară   Revizia următoare  

Fișierul intrare/ieșire partitura.in, partitura.out Sursă Olimpiada pe scoala 2014
Autor Cristian Frâncu Adăugată de avatar francu Cristian Frâncu francu
Timp de execuție pe test 0.05 sec Limită de memorie 2048 KB
Scorul tău N/A Dificultate stea de rating de tip fullstea de rating de tip fullstea de rating de tip emptystea de rating de tip emptystea de rating de tip empty
open book Poți vedea testele pentru această problemă accesând atașamentele .

Partitura (clasa a 5-a)

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 dacă melodia este majoră sau minoră. 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 11 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 76. Împărțind-o la numărul de note, 12, obținem media 6.
  • 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 C1. Apoi partitura descrește și vom considera iar diferențele între note consecutive în secvență obținînd un interval de descreștere D1. Intervalul de fugă este diferența în valoare absolută dintre suma intervalelor de creștere și a celor de descreștere: I = abs( [C1 + C2 + ... + Ck] – [D1 + D2 + ... + Dm] ). 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
    • 8 11 13 are creșterea (11-8) + (13-11) = 5
    • 10 7 3 cu descreșterea (10-7) + (7-3) = 7
    • 5 2 cu descreșterea (5-2) = 3
      Fuga partiturii este suma creșterilor minus suma descreșterilor: (8+2+5) – (7+3) = 5
  • 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. Dacă melodia are mai multe acorduri majore decît minore spunem că gama ei este majoră, altfel spunem că este minoră.

Cerință

Dată o partitură determinați cheia, fuga și dacă melodia este majoră sau minoră.

Date de intrare

Fișierul de intrare partitura.in ...

Date de ieșire

În fișierul de ieșire partitura.out ...

Restricții

  • ... ≤ ... ≤ ...

Exemplu

partitura.in partitura.out
This is some
text written on
multiple lines.
This is another
text written on
multiple lines.

Explicație

...

Trebuie să te autentifici pentru a trimite soluții. Click aici

Indicii de rezolvare

Arată 2 categorii