#2966
Se dă o matrice A cu N linii și M coloane, cu valori cuprinse între 1 și N∙M inclusiv, nu neapărat distincte. O operație constă în selectarea a două linii sau două coloane consecutive și interschimbarea acestora (swap). O matrice yin-yang este o matrice în care A[ i ] [ j ] ≥ A[ i ][ j – 1], pentru orice pereche (i, j) cu 1 ≤ i ≤ N și 2 ≤ j ≤ M și A[ i ][ j ] ≥ A[ i – 1][ j ], pentru orice pereche (i, j) cu 2 ≤ i ≤ N și 1 ≤ j ≤ M.
Să se determine numărul minim de operații necesare pentru a transforma matricea dată într-o matrice yin-yang.
OJI 2019
| Problema | yinyang | Operații I/O |
yinyang.in/yinyang.out
|
|---|---|---|---|
| Limita timp | 1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #63969724 | Utilizator | |
| Fișier | yinyang.cpp | Dimensiune | 1.16 KB |
| Data încărcării | 31 Martie 2026, 14:00 | Scor/rezultat | Eroare de compilare |
yinyang.cpp:7:35: error: expected ',' or '...' before 'sumlin' void citire(int &n, int &m, int[] sumlin, int[] sumcol){ ^ yinyang.cpp: In function 'void citire(int&, int&, int*)': yinyang.cpp:8:2: error: 'ifstream' was not declared in this scope ifstream f("yinyang.in"); ^ yinyang.cpp:8:2: note: suggested alternative: In file included from /usr/include/c++/4.8/ios:38:0, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from yinyang.cpp:4: /usr/include/c++/4.8/iosfwd:157:34: note: 'std::ifstream' typedef basic_ifstream<char> ifstream; ^ yinyang.cpp:8:11: error: expected ';' before 'f' ifstream f("yinyang.in"); ^ yinyang.cpp:9:9: error: declaration of 'int n' shadows a parameter int n, m, a, j = 0, i = 0; ^ yinyang.cpp:9:12: error: declaration of 'int m' shadows a parameter int n, m, a, j = 0, i = 0; ^ yinyang.cpp:10:5: error: 'f' was not declared in this scope f>>n>>m; ^ yinyang.cpp:18:9: error: 'sumlin' was not declared in this scope sumlin[i]+=a; ^ yinyang.cpp:19:9: error: 'sumcol' was not declared in this scope sumcol[j]+=a; ^ yinyang.cpp: At global scope: yinyang.cpp:24:16: error: expected ',' or '...' before 'vec' int swap(int[] vec, i, j){ ^ yinyang.cpp: In function 'int swap(int*)': yinyang.cpp:26:8: error: 'vec' was not declared in this scope aux = vec[j]; ^ yinyang.cpp:26:12: error: 'j' was not declared in this scope aux = vec[j]; ^ yinyang.cpp:29:1: warning: no return statement in function returning non-void [-Wreturn-type] } ^ yinyang.cpp: In function 'int main()': yinyang.cpp:33:32: error: too many arguments to function 'void citire(int&, int&, int*)' citire(n, m, sumlin, sumcol); ^ yinyang.cpp:7:6: note: declared here void citire(int &n, int &m, int[] sumlin, int[] sumcol){ ^ yinyang.cpp:34:5: error: 'ofstream' was not declared in this scope ofstream g("yingyang.out"); ^ yinyang.cpp:34:5: note: suggested alternative: In file included from /usr/include/c++/4.8/ios:38:0, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from yinyang.cpp:4: /usr/include/c++/4.8/iosfwd:160:34: note: 'std::ofstream' typedef basic_ofstream<char> ofstream; ^ yinyang.cpp:34:14: error: expected ';' before 'g' ofstream g("yingyang.out"); ^ yinyang.cpp:42:36: error: too many arguments to function 'int swap(int*)' swap(sumlin, j, j+1); ^ yinyang.cpp:24:5: note: declared here int swap(int[] vec, i, j){ ^ yinyang.cpp:53:36: error: too many arguments to function 'int swap(int*)' swap(sumcol, j, j+1); ^ yinyang.cpp:24:5: note: declared here int swap(int[] vec, i, j){ ^ yinyang.cpp:58:5: error: 'g' was not declared in this scope g<<contor_mutari; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema yinyang 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ă.