Detalii evaluare #64743189

Rezumat problemă

#4505

Ash este un antrenor Pokemon ambițios, setându-și scopul să devină cel mai bun. Din păcate, rivalul său, Gary, a furat startul și are Pokemoni mai puternici decât cei ai lui Ash.

Totuși, Ash nu se va da bătut chiar așa ușor! Are un plan de bătaie: în aventurile sale a găsit o clădire misterioasă care poate fi reprezentată ca o matrice de N x M, fiecare celulă reprezentând conținutul unei camere. În această clădire se află:

  • Ash (codificat cu A): Ash se află inițial în această cameră
  • Mewtwo (codificat cu M): cel mai puternic Pokemon cunoscut de om. Ash are deja un Master Ball, așa că îl va poate prinde pe Mewtwo cu ușurință.
  • Gary (codificat cu G): a fost provocat de Ash la o bătălie de Pokemoni și îl așteaptă într-o anumită cameră
  • cameră liberă (codificată cu _): Ash poate accesa această cameră
  • cameră ocupată (codificată cu #): Ash nu poate accesa această cameră

Planul său constă în a-l prinde pe Mewtwo, după aceea în a-l confrunta pe Gary. Ash se poate deplasa în cele patru direcții cardinale (N, E, S, V). Știind că o deplasare se face într-o secundă, determinați numărul minim de secunde în care Ash poate ajunge la Mewtwo, apoi la Gary.

Detalii

Problema Mewtwo Operații I/O tastatură/ecran
Limita timp 0.15 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #64743189 Utilizator Didier Kabongo (didier_2k08)
Fișier mewtwo.cpp Dimensiune 1.38 KB
Data încărcării 27 Mai 2026, 11:18 Scor/rezultat Eroare de compilare

Evaluare

Mesaj compilare

mewtwo.cpp:1:20: warning: extra tokens at end of #include directive
    1 | #include <iostream>#include <queue>using namespace std;int a[1005][1005], d[1005][1005], n, m;int dx[]={1, -1, 0, 0};int dy[]={0, 0, 1, -1};struct punct{
      |                    ^
mewtwo.cpp:3:1: error: expected declaration before ‘}’ token
    3 | };punct A, G, M;void citire()
      | ^
mewtwo.cpp:3:3: error: ‘punct’ does not name a type
    3 | };punct A, G, M;void citire()
      |   ^~~~~
mewtwo.cpp: In function ‘void citire()’:
mewtwo.cpp:6:5: error: ‘cin’ was not declared in this scope; did you mean ‘std::cin’?
    6 |     cin >> n >> m;
      |     ^~~
      |     std::cin
In file included from mewtwo.cpp:1:
/usr/include/c++/13/iostream:62:18: note: ‘std::cin’ declared here
   62 |   extern istream cin;           ///< Linked to standard input
      |                  ^~~
mewtwo.cpp:6:12: error: ‘n’ was not declared in this scope
    6 |     cin >> n >> m;
      |            ^
mewtwo.cpp:6:17: error: ‘m’ was not declared in this scope
    6 |     cin >> n >> m;
      |                 ^
mewtwo.cpp:13:25: error: ‘A’ was not declared in this scope
   13 |             if(ch=='A') A.x=i, A.y=j;
      |                         ^
mewtwo.cpp:14:25: error: ‘M’ was not declared in this scope
   14 |             if(ch=='M') M.x=i, M.y=j;
      |                         ^
mewtwo.cpp:15:25: error: ‘G’ was not declared in this scope
   15 |             if(ch=='G') G.x=i, G.y=j;
      |                         ^
mewtwo.cpp:16:25: error: ‘a’ was not declared in this scope
   16 |             if(ch=='#') a[i][j]=-1;
      |                         ^
mewtwo.cpp:21:9: error: ‘a’ was not declared in this scope
   21 |         a[i][0]=a[i][m+1]=-1;
      |         ^
mewtwo.cpp:23:9: error: ‘a’ was not declared in this scope
   23 |         a[0][j]=a[n+1][j]=-1;
      |         ^
mewtwo.cpp: At global scope:
mewtwo.cpp:24:10: error: ‘punct’ was not declared in this scope
   24 | }int lee(punct st, punct fin)
      |          ^~~~~
mewtwo.cpp:24:20: error: ‘punct’ was not declared in this scope
   24 | }int lee(punct st, punct fin)
      |                    ^~~~~
mewtwo.cpp:24:29: error: expression list treated as compound expression in initializer [-fpermissive]
   24 | }int lee(punct st, punct fin)
      |                             ^
mewtwo.cpp: In function ‘int main()’:
mewtwo.cpp:51:13: error: ‘A’ was not declared in this scope
   51 |     dam=lee(A, M);
      |             ^
mewtwo.cpp:51:16: error: ‘M’ was not declared in this scope
   51 |     dam=lee(A, M);
      |                ^
mewtwo.cpp:51:17: error: ‘lee’ cannot be used as a function
   51 |     dam=lee(A, M);
      |                 ^
mewtwo.cpp:52:20: error: ‘n’ was not declared in this scope
   52 |     for(int i=1;i<=n;i++)
      |                    ^
mewtwo.cpp:53:24: error: ‘m’ was not declared in this scope
   53 |         for(int j=1;j<=m;j++)
      |                        ^
mewtwo.cpp:54:13: error: ‘d’ was not declared in this scope
   54 |             d[i][j]=0;
      |             ^
mewtwo.cpp:55:16: error: ‘G’ was not declared in this scope
   55 |     dmg=lee(M, G);
      |                ^
mewtwo.cpp:55:17: error: ‘lee’ cannot be used as a function
   55 |     dmg=lee(M, G);
      |                 ^
mewtwo.cpp:56:5: error: ‘cout’ was not declared in this scope; did you mean ‘std::cout’?
   56 |     cout << dam+dmg;
      |     ^~~~
      |     std::cout
/usr/include/c++/13/iostream:63:18: note: ‘std::cout’ declared here
   63 |   extern ostream cout;          ///< Linked to standard output
      |                  ^~~~

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Mewtwo face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

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ă.

Du-te sus!