Detalii evaluare #35463885

Rezumat problemă

Un labirint este descris ca fiind o matrice binară cu N linii și M coloane, cu semnificația că 0 reprezintă o poziție liberă, iar 1 reprezintă o poziție în care se află un zid. Un drum în labirint este un traseu în matrice care începe cu poziția (1, 1) și ajunge în poziția (N, M) prin deplasare doar pe poziții care au valoarea 0 și sunt vecine cu poziția curentă, pe una din cele patru direcții: sus, jos, stânga, dreapta. Lungimea unui drum este egală cu numărul de poziții vizitate. Notăm cu d0 lungimea drumului minim de la poziția (1, 1) la poziția (N,M). Fie d(i, j) lungimea drumului minim de la poziția (1, 1) la poziția (N, M), dacă poziției (i, j) i se atribuie valoarea 0. Observăm că dacă poziția (i, j) conține inițial un 0, atunci d0 = d(i, j). Pentru fiecare poziție (i, j) să se verifice dacă d(i, j) < d0.

OJI 2021, clasa a X-a

Detalii

Problema Labirint5 Operații I/O labirint.in/labirint.out
Limita timp 0.2 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #35463885 Utilizator Ionescu Muscel Marc (marc23)
Fișier labirint5.cpp Dimensiune 4.17 KB
Data încărcării 10 Martie 2022, 10:58 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

labirint5.cpp:100:13: error: redefinition of 'std::ifstream fin'
 ifstream fin("labirint.in");

             ^
labirint5.cpp:5:10: error: 'std::ifstream fin' previously declared here
 ifstream fin("labirint.in");

          ^
labirint5.cpp:101:14: error: redefinition of 'std::ofstream fout'
 ofstream fout("labirint.out");

              ^
labirint5.cpp:6:10: error: 'std::ofstream fout' previously declared here
 ofstream fout("labirint.out");

          ^
labirint5.cpp:103:17: error: redefinition of 'int a [1002][1002]'
 int a[1002][1002],a2[1002][1002],a3[1002][1002];

                 ^
labirint5.cpp:8:5: error: 'int a [1002][1002]' previously declared here
 int a[1002][1002],a2[1002][1002],a3[1002][1002];

     ^
labirint5.cpp:103:32: error: redefinition of 'int a2 [1002][1002]'
 int a[1002][1002],a2[1002][1002],a3[1002][1002];

                                ^
labirint5.cpp:8:19: error: 'int a2 [1002][1002]' previously declared here
 int a[1002][1002],a2[1002][1002],a3[1002][1002];

                   ^
labirint5.cpp:103:47: error: redefinition of 'int a3 [1002][1002]'
 int a[1002][1002],a2[1002][1002],a3[1002][1002];

                                               ^
labirint5.cpp:8:34: error: 'int a3 [1002][1002]' previously declared here
 int a[1002][1002],a2[1002][1002],a3[1002][1002];

                                  ^
labirint5.cpp:104:8: error: redefinition of 'int dx []'
 int dx[]={-1,0,1,0};

        ^
labirint5.cpp:9:5: error: 'int dx [4]' previously defined here
 int dx[]={-1,0,1,0};

     ^
labirint5.cpp:105:8: error: redefinition of 'int dy []'
 int dy[]={0,1,0,-1};

        ^
labirint5.cpp:10:5: error: 'int dy [4]' previously defined here
 int dy[]={0,1,0,-1};

     ^
labirint5.cpp:106:16: error: redefinition of 'int l [1004004]'
 int l[1002*1002];

                ^
labirint5.cpp:11:5: error: 'int l [1004004]' previously declared here
 int l[1002*1002];

     ^
labirint5.cpp:107:16: error: redefinition of 'int c [1004004]'
 int c[1002*1002];

                ^
labirint5.cpp:12:5: error: 'int c [1004004]' previously declared here
 int c[1002*1002];

     ^
labirint5.cpp:108:5: error: redefinition of 'int in'
 int in,sf,d;

     ^
labirint5.cpp:13:5: error: 'int in' previously declared here
 int in,sf,d;

     ^
labirint5.cpp:108:8: error: redefinition of 'int sf'
 int in,sf,d;

        ^
labirint5.cpp:13:8: error: 'int sf' previously declared here
 int in,sf,d;

        ^
labirint5.cpp:108:11: error: redefinition of 'int d'
 int in,sf,d;

           ^
labirint5.cpp:13:11: error: 'int d' previously declared here
 int in,sf,d;

           ^
labirint5.cpp: In function 'void lee(int, int)':
labirint5.cpp:110:6: error: redefinition of 'void lee(int, int)'
 void lee(int L, int C){

      ^
labirint5.cpp:15:6: error: 'void lee(int, int)' previously defined here
 void lee(int L, int C){

      ^
labirint5.cpp: In function 'int main()':
labirint5.cpp:132:5: error: redefinition of 'int main()'
 int main()

     ^
labirint5.cpp:37:5: error: 'int main()' previously defined here
 int main()

     ^

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