#3114
abq
Fie o matrice cu n
linii (numerotate de la 1
la n
) și m
coloane (numerotate de la 1
la m
) ce conține doar literele a
și b
. Se definește un drum de la o poziție (xs, ys)
la o alta (xf, yf)
ca fiind o succesiune de pași care pornește din coordonatele (xs, ys)
și ajunge în (xf, yf)
și care trece numai prin componente care memorează litera a
. La fiecare pas, de la o poziţie (i, j)
se poate trece într-una din poziţiile (i+1, j)
, (i-1, j)
, (i, j+1)
, (i, j-1)
. Lungimea drumului este dată de numărul de componente care compun drumul.
Având la dispoziție q
întrebări date sub forma a patru numere naturale xs ys xf yf
, trebuie să răspundeți pentru fiecare întrebare care este lungimea minimă a unui drum de la (xs, ys)
la (xf, yf)
care trece numai prin componente ce memorează litera a
. Dacă un astfel de drum nu există, veți afișa valoarea –1
.
Concurs Judetean XOR 2014
Problema | abq | Operații I/O |
![]() abq.in /abq.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 4 MB
/
Stivă 2 MB
|
Id soluție | #50970973 | Utilizator | |
Fișier | abq.cpp | Dimensiune | 1.11 KB |
Data încărcării | 16 Mai 2024, 15:09 | Scor / rezultat | Eroare de compilare |
abq.cpp: In function 'void bfs(int, int)': abq.cpp:16:21: error: two or more data types in declaration of 'type name' queue <pair<int int>> q; ^ abq.cpp:16:21: error: wrong number of template arguments (1, should be 2) 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 abq.cpp:1: /usr/include/c++/4.8/bits/stl_pair.h:96:12: error: provided for 'template<class _T1, class _T2> struct std::pair' struct pair ^ abq.cpp:16:24: error: template argument 1 is invalid queue <pair<int int>> q; ^ abq.cpp:16:24: error: template argument 2 is invalid abq.cpp:16:28: error: invalid type in declaration before ';' token queue <pair<int int>> q; ^ abq.cpp:17:7: error: request for member 'push' in 'q', which is of non-class type 'int' q.push({x,y}); ^ abq.cpp:19:14: error: request for member 'empty' in 'q', which is of non-class type 'int' while(!q.empty()) ^ abq.cpp:21:18: error: request for member 'front' in 'q', which is of non-class type 'int' int x1=q.front().first; ^ abq.cpp:22:18: error: request for member 'front' in 'q', which is of non-class type 'int' int y1=q.front().second; ^ abq.cpp:23:11: error: request for member 'pop' in 'q', which is of non-class type 'int' q.pop(); ^ abq.cpp:26:31: error: expected unqualified-id before 'int' int xnou=x1+dx[i],int ynou=y1+dx[i]; ^ abq.cpp:27:27: error: 'jnou' was not declared in this scope if(inmat(xnou,jnou)&&v[xnou][ynou]==0&&s[xnou][ynou]=='a') ^ abq.cpp:27:42: error: 'ynou' was not declared in this scope if(inmat(xnou,jnou)&&v[xnou][ynou]==0&&s[xnou][ynou]=='a') ^ abq.cpp:29:19: error: request for member 'push' in 'x', which is of non-class type 'int' x.push({xnou,ynou}); ^ abq.cpp: In function 'int main()': abq.cpp:42:12: error: 'q' was not declared in this scope f>>q; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema abq 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ă.