#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 | #63969737 | Utilizator | |
| Fișier | yinyang.cpp | Dimensiune | 1.19 KB |
| Data încărcării | 31 Martie 2026, 14:01 | Scor/rezultat | Eroare de compilare |
yinyang.cpp:8: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:10:9: error: declaration of 'int n' shadows a parameter int n, m, a, j = 0, i = 0; ^ yinyang.cpp:10:12: error: declaration of 'int m' shadows a parameter int n, m, a, j = 0, i = 0; ^ yinyang.cpp:19:9: error: 'sumlin' was not declared in this scope sumlin[i]+=a; ^ yinyang.cpp:20:9: error: 'sumcol' was not declared in this scope sumcol[j]+=a; ^ yinyang.cpp: At global scope: yinyang.cpp:25:16: error: expected ',' or '...' before 'vec' int swap(int[] vec,int i,int j){ ^ yinyang.cpp: In function 'int swap(int*)': yinyang.cpp:27:8: error: 'vec' was not declared in this scope aux = vec[j]; ^ yinyang.cpp:27:12: error: 'j' was not declared in this scope aux = vec[j]; ^ yinyang.cpp:30:1: warning: no return statement in function returning non-void [-Wreturn-type] } ^ yinyang.cpp: In function 'int main()': yinyang.cpp:34:32: error: too many arguments to function 'void citire(int&, int&, int*)' citire(n, m, sumlin, sumcol); ^ yinyang.cpp:8:6: note: declared here void citire(int &n, int &m, int[] sumlin, int[] sumcol){ ^ yinyang.cpp:43:36: error: no matching function for call to 'swap(int [100], int&, int)' swap(sumlin, j, j+1); ^ yinyang.cpp:43:36: note: candidates are: yinyang.cpp:25:5: note: int swap(int*) int swap(int[] vec,int i,int j){ ^ yinyang.cpp:25:5: note: candidate expects 1 argument, 3 provided In file included from /usr/include/c++/4.8/string:52:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, 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/bits/basic_string.h:2717:5: note: template<class _CharT, class _Traits, class _Alloc> void std::swap(std::basic_string<_CharT, _Traits, _Alloc>&, std::basic_string<_CharT, _Traits, _Alloc>&) swap(basic_string<_CharT, _Traits, _Alloc>& __lhs, ^ /usr/include/c++/4.8/bits/basic_string.h:2717:5: note: template argument deduction/substitution failed: yinyang.cpp:43:36: note: mismatched types 'std::basic_string<_CharT, _Traits, _Alloc>' and 'int [100]' swap(sumlin, j, j+1); ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:64:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, 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/bits/stl_pair.h:254:5: note: template<class _T1, class _T2> void std::swap(std::pair<_T1, _T2>&, std::pair<_T1, _T2>&) swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y) ^ /usr/include/c++/4.8/bits/stl_pair.h:254:5: note: template argument deduction/substitution failed: yinyang.cpp:43:36: note: mismatched types 'std::pair<_T1, _T2>' and 'int [100]' swap(sumlin, j, j+1); ^ In file included from /usr/include/c++/4.8/bits/stl_pair.h:59:0, from /usr/include/c++/4.8/bits/stl_algobase.h:64, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, 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/bits/move.h:185:5: note: template<class _Tp, unsigned int _Nm> void std::swap(_Tp (&)[_Nm], _Tp (&)[_Nm]) swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm]) ^ /usr/include/c++/4.8/bits/move.h:185:5: note: template argument deduction/substitution failed: yinyang.cpp:43:36: note: mismatched types '_Tp [_Nm]' and 'int' swap(sumlin, j, j+1); ^ In file included from /usr/include/c++/4.8/bits/stl_pair.h:59:0, from /usr/include/c++/4.8/bits/stl_algobase.h:64, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, 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/bits/move.h:166:5: note: template<class _Tp> void std::swap(_Tp&, _Tp&) swap(_Tp& __a, _Tp& __b) ^ /usr/include/c++/4.8/bits/move.h:166:5: note: template argument deduction/substitution failed: yinyang.cpp:43:36: note: deduced conflicting types for parameter '_Tp' ('int [100]' and 'int') swap(sumlin, j, j+1); ^ yinyang.cpp:54:36: error: no matching function for call to 'swap(int [100], int&, int)' swap(sumcol, j, j+1); ^ yinyang.cpp:54:36: note: candidates are: yinyang.cpp:25:5: note: int swap(int*) int swap(int[] vec,int i,int j){ ^ yinyang.cpp:25:5: note: candidate expects 1 argument, 3 provided In file included from /usr/include/c++/4.8/string:52:0, from /usr/include/c++/4.8/bits/locale_classes.h:40, from /usr/include/c++/4.8/bits/ios_base.h:41, from /usr/include/c++/4.8/ios:42, 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/bits/basic_string.h:2717:5: note: template<class _CharT, class _Traits, class _Alloc> void std::swap(std::basic_string<_CharT, _Traits, _Alloc>&, std::basic_string<_CharT, _Traits, _Alloc>&) swap(basic_string<_CharT, _Traits, _Alloc>& __lhs, ^ /usr/include/c++/4.8/bits/basic_string.h:2717:5: note: template argument deduction/substitution failed: yinyang.cpp:54:36: note: mismatched types 'std::basic_string<_CharT, _Traits, _Alloc>' and 'int [100]' swap(sumcol, j, j+1); ^ In file included from /usr/include/c++/4.8/bits/stl_algobase.h:64:0, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, 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/bits/stl_pair.h:254:5: note: template<class _T1, class _T2> void std::swap(std::pair<_T1, _T2>&, std::pair<_T1, _T2>&) swap(pair<_T1, _T2>& __x, pair<_T1, _T2>& __y) ^ /usr/include/c++/4.8/bits/stl_pair.h:254:5: note: template argument deduction/substitution failed: yinyang.cpp:54:36: note: mismatched types 'std::pair<_T1, _T2>' and 'int [100]' swap(sumcol, j, j+1); ^ In file included from /usr/include/c++/4.8/bits/stl_pair.h:59:0, from /usr/include/c++/4.8/bits/stl_algobase.h:64, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, 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/bits/move.h:185:5: note: template<class _Tp, unsigned int _Nm> void std::swap(_Tp (&)[_Nm], _Tp (&)[_Nm]) swap(_Tp (&__a)[_Nm], _Tp (&__b)[_Nm]) ^ /usr/include/c++/4.8/bits/move.h:185:5: note: template argument deduction/substitution failed: yinyang.cpp:54:36: note: mismatched types '_Tp [_Nm]' and 'int' swap(sumcol, j, j+1); ^ In file included from /usr/include/c++/4.8/bits/stl_pair.h:59:0, from /usr/include/c++/4.8/bits/stl_algobase.h:64, from /usr/include/c++/4.8/bits/char_traits.h:39, from /usr/include/c++/4.8/ios:40, 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/bits/move.h:166:5: note: template<class _Tp> void std::swap(_Tp&, _Tp&) swap(_Tp& __a, _Tp& __b) ^ /usr/include/c++/4.8/bits/move.h:166:5: note: template argument deduction/substitution failed: yinyang.cpp:54:36: note: deduced conflicting types for parameter '_Tp' ('int [100]' and 'int') swap(sumcol, j, j+1); ^
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ă.