Revizia anterioară Revizia următoare
Fişierul intrare/ieşire: | prietenie3.in, prietenie3.out | Sursă | ONIS 2015, Runda 3 |
Autor | Vlad Stoian | Adăugată de | |
Timp execuţie pe test | 1 sec | Limită de memorie | 20480 kbytes |
Scorul tău | N/A | Dificultate | N/A |
Vezi solutiile trimise | Statistici
Prietenie3
Tu impreuna cu cel mai rau prieten al tau (presupunem ca ai unul), ati primit cate un vector cadou fiecare (V al tau, R al lui), cu N, respectiv M valori. Pentru ca tot timpul te calca pe nervi, ai decis sa il pedepsesti in modul urmator: cand se lasa noaptea, vei efectua niste operatii pe acesti vectori astfel incat valoarea minima din vectorul tau va ajunge mai mare sau egala cu valoarea maxima din vectorul lui (adica min(V) >= max®). Pentru ca noaptea e lunga, si exista sansa sa te plictisesti, teai decis sa incrementezi sau decrementezi doar cu 1 orice valoare din vectorul tau sau din vectorul lui, dar totodata vrei sa fii optim.
Teai asezat la calculator si incerci sa scrii un program care calculeaza numarul minim de operatii necesare pentru a reusi sal “pedepsesti” pe cel mai rau prieten al tau.
Date de intrare
Fişierul de intrare prietenie3.in contine pe prima linie T, numarul de teste. In continuare, pentru fiecare test, pe prima linie se vor afla 2 numere, N si M, iar pe urmatoarele 2 linii se vor afla N, respectiv M numere reprezentand valorile vectorilor V si R.
Date de ieşire
În fişierul de ieşire prietenie3.out se vor gasi T linii, iar fiecare linie va contine un numar natural reprezentand numarul minim de operatii.
Restricţii
- ... ≤ ... ≤ ...
- T = 20
- 1 ≤ N, M ≤ 105
- Valorile vectorilor vor fi intre 1 si 109.
Exemplu
prietenie3.in | prietenie3.out |
---|---|
3 2 2 2 3 3 5 3 2 1 2 3 3 4 3 2 4 5 6 1 2 | 3 4 0 |
Explicaţie
In primul exemplu, incrementam o data V1 cu 1, si apoi decrementam R2 de 2 ori.
In al treilea exemplul, nu este necesara nici o operatie.