#1104
Se consideră N vectori cu elemente întregi, numerotați de la 1 la N, sortați crescător, fiecare vector având un număr precizat de elemente.
Să se răspundă la Q întrebări de tipul:
a) 1 i j, cu semnificaţia: care este minimul dintre modulele diferențelor oricăror două elemente, primul element aparținând vectorului numerotat cu i, iar cel de al doilea element aparținând vectorului numerotat cu j ?
b) 2 i j, cu semnificația: care este valoarea ce se găsește pe poziția mediană în vectorul obținut prin interclasarea vectorilor având numerele de ordine i,i+1,…,j (i<j).
ONI 2014, Clasa a IX-a
| Problema | qvect | Operații I/O |
qvect.in/qvect.out
|
|---|---|---|---|
| Limita timp | 1 secunde | Limita memorie |
Total: 8 MB
/
Stivă 2 MB
|
| Id soluție | #64683464 | Utilizator | |
| Fișier | qvect.cpp | Dimensiune | 2.00 KB |
| Data încărcării | 22 Mai 2026, 15:43 | Scor/rezultat | 100 puncte |
qvect.cpp: In function ‘int q2(int, int, int)’: qvect.cpp:26:9: warning: variable ‘i’ set but not used [-Wunused-but-set-variable] 26 | int i, j, s, d, val, nr, k, ok, nr0, rez, sol; | ^ qvect.cpp: In function ‘int main()’: qvect.cpp:60:12: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 60 | freopen("qvect.in", "r", stdin); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ qvect.cpp:61:12: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 61 | freopen("qvect.out","w", stdout); | ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~ qvect.cpp:63:10: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 63 | scanf("%d%d", &n, &q); | ~~~~~^~~~~~~~~~~~~~~~ qvect.cpp:66:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 66 | scanf("%d", &x); | ~~~~~^~~~~~~~~~ qvect.cpp:70:18: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 70 | scanf("%d", &a[i][j]); | ~~~~~^~~~~~~~~~~~~~~~ qvect.cpp:75:14: warning: ignoring return value of ‘int scanf(const char*, ...)’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 75 | scanf("%d%d%d", &op, &x, &y); | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~ qvect.cpp: In function ‘int q2(int, int, int)’: qvect.cpp:53:12: warning: ‘rez’ may be used uninitialized [-Wmaybe-uninitialized] 53 | return rez; | ^~~ qvect.cpp:26:42: note: ‘rez’ was declared here 26 | int i, j, s, d, val, nr, k, ok, nr0, rez, sol; | ^~~
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 1 | 0.003 secunde | OK. | 5 | 5 | ||
| 2 | 0.001 secunde | OK. | 5 | 5 | ||
| 3 | 0.017 secunde | OK. | 5 | 5 | ||
| 4 | 0.072 secunde | OK. | 5 | 5 | ||
| 5 | 0.001 secunde | OK. | 5 | 5 | ||
| 6 | 0.009 secunde | OK. | 5 | 5 | ||
| 7 | 0.084 secunde | OK. | 5 | 5 | ||
| 8 | 0.008 secunde | OK. | 5 | 5 | ||
| 9 | 0.028 secunde | OK. | 5 | 5 | ||
| 10 | 0.063 secunde | OK. | 5 | 5 | ||
| 11 | 0.05 secunde | OK. | 5 | 5 | ||
| 12 | 0.04 secunde | OK. | 5 | 5 | ||
| 13 | 0.062 secunde | OK. | 5 | 5 | ||
| 14 | 0.063 secunde | OK. | 5 | 5 | ||
| 15 | 0.056 secunde | OK. | 5 | 5 | ||
| 16 | 0.064 secunde | OK. | 5 | 5 | ||
| 17 | 0.045 secunde | OK. | 5 | 5 | ||
| 18 | 0.047 secunde | OK. | 5 | 5 | ||
| 19 | 0.058 secunde | OK. | 5 | 5 | ||
| 20 | 0.071 secunde | OK. | 5 | 5 | ||
| Punctaj total | 100 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema qvect face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.