Fişierul intrare/ieşire:note.in, note.outSursăLista lui Francu
AutorCatalin FrancuAdăugată de
Timp execuţie pe test0.075 secLimită de memorie65536 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise | Statistici

Note

O partitura muzicala este scrisa pe V voci, fiecare voce avand cate N note. Spunem ca un solfegiu se brodeste peste aceasta partitura daca solfegiul are tot lungimea de N note si fiecare din notele solfegiului coincide cu nota de pe pozitia corespunzatoare a partiturii, pe cel putin una dintre voci.
De exemplu, solfegiul
mi re la do si fa sol la
se brodeste partiturii pe 2 voci cu 8 note
mi re do do si fa fa si
sol si la do sol mi sol la
, pentru ca notele 1, 2, 5 si 6 din solfegiu sunt cantate conform vocii I, iar notele 3, 7 si 8 sunt cantate dupa vocea a doua. Se observa ca nota a patra (do) este cantata conform ambelor voci.
Spunem ca un solfegiu de o lungime oarecare falseaza in K locuri daca este nevoie de exact K modificari asupra lui pentru a-l face sa se brodeasca peste partitura. O modificare poate fi:
1) Stergerea unei note din solfegiu
2) Adaugarea unei note in solfegiu
3) Inlocuirea unei note in solfegiu.
De exemplu, solfegiul
mi re sol do si fa si
falseaza in doua locuri, pentru ca trebuie sa modificam nota sol in la si sa inseram inca un fa intre si si fa pentru a-l aduce la forma:
mi re la do si fa fa si
care se brodeste peste partitura.

Cerinta

Sa se determine daca un solfegiu dat se brodeste peste o partitura data, sau, in caz contrar, care este numarul minim de locuri in care falseaza. Notele vor fi reprezentate prin numere de la 1 la 100.

Date de Intrare

Fisierul de intrare note.in va avea urmatoarea structura: pe prima linie se vor afla V si N, separate de exact un spatiu, numarul de voci si numarul de note. Urmatoarele V linii contin cate N numere, simbolizand partitura cu V voci si N note pe fiecare voce. Numerele vor fi naturale si intre 1 si 100. Linia V+2 va contine numarul M de note ale solfegiului. Linia V+3 va contine M numere naturale cuprinse in intervalul [1, 100], reprezentand notele solfegiului.

Date de Iesire

Fisierul de iesire note.out va contine numarul minim de locuri in care solfegiul falseaza, in functie de partitura data. Daca solfegiul se brodeste peste partitura numarul afisat va fi 0.

Restrictii

  • 1 ≤ V ≤ 512
  • 1 ≤ M, N ≤ 1024

Exemplu

note.innote.out
2 8
3 2 1 1 7 4 4 7
5 7 6 1 5 3 5 6
7
3 2 5 1 7 4 7
2

Explicatii

Nota a 3a din solfegiu se va inlocui cu 1 sau cu 6, iar intre ultimele doua note se va adauga una din notele 4 sau 5.

Trebuie sa te autentifici pentru a trimite solutii. Click aici

Cum se trimit solutii?

remote content