#2519
wisp
Antonia, o elevă în clasa a noua, plictisită de testele și de lecțiile de la chimie, se decide să creeze un joc. Ea alege două numere naturale nenule, n
și k
, cu ajutorul cărora construiește o matrice pătratică n x n
în formă de spirală (dinspre exterior înspre interior, ca în figura de mai jos). Apoi, fata umple matricea cu numere naturale nenule consecutive, pornind de la k
.
Ajutați-o pe Antonia să calculeze elementele de pe diagonala principală – până să fie prinsă!
Problema | wisp | Operații I/O |
wisp.in /wisp.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #10145748 | Utilizator | |
Fișier | wisp.cpp | Dimensiune | 877 B |
Data încărcării | 16 August 2018, 10:42 | Scor / rezultat | Eroare de compilare |
wisp.cpp: In function 'int main()': wisp.cpp:8:8: error: cannot bind 'std::basic_istream<char>' lvalue to 'std::basic_istream<char>&&' f>>n>>x; ^ In file included from /usr/include/c++/4.8/fstream:38:0, from wisp.cpp:1: /usr/include/c++/4.8/istream:872:5: error: initializing argument 1 of 'std::basic_istream<_CharT, _Traits>& std::operator>>(std::basic_istream<_CharT, _Traits>&&, _Tp&) [with _CharT = char; _Traits = std::char_traits<char>; _Tp = int*]' operator>>(basic_istream<_CharT, _Traits>&& __is, _Tp& __x) ^ wisp.cpp:10:18: error: expression in new-declarator must have integral or enumeration type a = new int*[n]; ^ wisp.cpp:11:17: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] for(i=1; i<=n; i++) ^ wisp.cpp:12:24: error: expression in new-declarator must have integral or enumeration type a[i] = new int[n]; ^ wisp.cpp:14:10: error: invalid conversion from 'int' to 'int*' [-fpermissive] for(k=1;k<=n/2+1;k++) ^ wisp.cpp:14:18: error: invalid operands of types 'int*' and 'int' to binary 'operator/' for(k=1;k<=n/2+1;k++) ^ wisp.cpp:16:14: error: invalid conversion from 'int*' to 'int' [-fpermissive] for(i=k;i<=n-k+1;i++) ^ wisp.cpp:18:16: error: invalid types 'int**[int*]' for array subscript a[k][i]=x,x++; ^ wisp.cpp:19:19: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] if(k==i) ^ wisp.cpp:20:24: error: invalid types 'int**[int*]' for array subscript s=s+a[k][i]; ^ wisp.cpp:22:16: error: invalid conversion from 'int*' to 'int' [-fpermissive] for(i=k+1;i<=n-k+1;i++) ^ wisp.cpp:28:22: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] for(i=n-k;i>=k;i--) ^ wisp.cpp:34:24: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] for(i=n-k;i>=k+1;i--) ^ wisp.cpp:36:19: error: invalid types 'int*[int*]' for array subscript a[i][k]=x,x++; ^ wisp.cpp:37:19: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] if(k==i) ^ wisp.cpp:38:24: error: invalid types 'int**[int*]' for array subscript s=s+a[k][i]; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema wisp 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ă.