Detalii evaluare #57858413

Rezumat problemă

Se consideră o clădire de formă dreptunghiulară, formată din n*m camere dispuse sub forma unei matrice cu n linii și m coloane. Anumite camere sunt ocupate şi nu pot fi vizitate, celelalte sunt libere și pot fi vizitate. Dintr-o cameră se poate trece în altă cameră dacă ambele sunt libere și se învecinează pe linie sau pe coloană.

În anumite camere sunt paznici. Din motive de securitate, paznicii se pot deplasa din camera inițială în anumite camere libere din apropiere, dar fără a se îndepărta la o distanță mai mare decât o valoare cunoscută. Fiecare paznic va verifica periodic camerele libere în care poate ajunge.

Să se determine numărul de camere din clădire care nu sunt verificate de niciun paznic.

Detalii

Problema Paznici Operații I/O paznici.in/paznici.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #57858413 Utilizator Filimon Alexandru (AlexFilimon)
Fișier paznici.cpp Dimensiune 3.40 KB
Data încărcării 27 Aprilie 2025, 21:00 Scor / rezultat Eroare de compilare

Evaluare

Mesaj compilare

paznici.cpp: In function 'int main()':
paznici.cpp:67:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(j=0; j<strlen(s); j++)

                            ^
paznici.cpp: At global scope:
paznici.cpp:93:14: error: redefinition of 'std::ifstream fin'
 ifstream fin ("paznici.in");

              ^
paznici.cpp:7:10: error: 'std::ifstream fin' previously declared here
 ifstream fin ("paznici.in");

          ^
paznici.cpp:94:15: error: redefinition of 'std::ofstream fout'
 ofstream fout ("paznici.out");

               ^
paznici.cpp:8:10: error: 'std::ofstream fout' previously declared here
 ofstream fout ("paznici.out");

          ^
paznici.cpp:96:15: error: redefinition of 'int a [201][201]'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

               ^
paznici.cpp:10:5: error: 'int a [201][201]' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

     ^
paznici.cpp:96:17: error: redefinition of 'int m'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                 ^
paznici.cpp:10:17: error: 'int m' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                 ^
paznici.cpp:96:19: error: redefinition of 'int n'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                   ^
paznici.cpp:10:19: error: 'int n' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                   ^
paznici.cpp:96:21: error: redefinition of 'int xi'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                     ^
paznici.cpp:10:21: error: 'int xi' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                     ^
paznici.cpp:96:24: error: redefinition of 'int xf'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                        ^
paznici.cpp:10:24: error: 'int xf' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                        ^
paznici.cpp:96:27: error: redefinition of 'int yi'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                           ^
paznici.cpp:10:27: error: 'int yi' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                           ^
paznici.cpp:96:30: error: redefinition of 'int yf'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                              ^
paznici.cpp:10:30: error: 'int yf' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                              ^
paznici.cpp:96:36: error: redefinition of 'int dx []'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                    ^
paznici.cpp:10:33: error: 'int dx [4]' previously defined here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                 ^
paznici.cpp:96:54: error: redefinition of 'int dy []'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                      ^
paznici.cpp:10:51: error: 'int dy [4]' previously defined here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                   ^
paznici.cpp:96:68: error: redefinition of 'int j'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                    ^
paznici.cpp:10:68: error: 'int j' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                    ^
paznici.cpp:96:70: error: redefinition of 'int i'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                      ^
paznici.cpp:10:70: error: 'int i' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                      ^
paznici.cpp:96:72: error: redefinition of 'int z'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                        ^
paznici.cpp:10:72: error: 'int z' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                        ^
paznici.cpp:96:85: error: redefinition of 'int ma [201][201]'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                                     ^
paznici.cpp:10:74: error: 'int ma [201][201]' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                          ^
paznici.cpp:96:87: error: redefinition of 'int nr'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                                       ^
paznici.cpp:10:87: error: 'int nr' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                                       ^
paznici.cpp:96:90: error: redefinition of 'int d'
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                                          ^
paznici.cpp:10:90: error: 'int d' previously declared here
 int a[201][201],m,n,xi,xf,yi,yf,dx[]= {-1,0,1,0}, dy[]= {0,1,0,-1},j,i,z,ma[201][201],nr,d;

                                                                                          ^
paznici.cpp:97:12: error: redefinition of 'char s [1001]'
 char s[1001];

            ^
paznici.cpp:11:6: error: 'char s [1001]' previously declared here
 char s[1001];

      ^
paznici.cpp:98:8: error: redefinition of 'struct coord'
 struct coord

        ^
paznici.cpp:12:8: error: previous definition of 'struct coord'
 struct coord

        ^
paznici.cpp:101:11: error: invalid type in declaration before ',' token
 } c[40000],pc;

           ^
paznici.cpp:101:11: error: conflicting declaration 'int c [40000]'
paznici.cpp:15:3: error: 'c' has a previous declaration as 'coord c [40000]'
 } c[40000],pc;

   ^
paznici.cpp:101:12: error: conflicting declaration 'int pc'
 } c[40000],pc;

            ^
paznici.cpp:15:12: error: 'pc' has a previous declaration as 'coord pc'
 } c[40000],pc;

            ^
paznici.cpp: In function 'bool inside(int, int)':
paznici.cpp:103:6: error: redefinition of 'bool inside(int, int)'
 bool inside(int x, int y)

      ^
paznici.cpp:17:6: error: 'bool inside(int, int)' previously defined here
 bool inside(int x, int y)

      ^
paznici.cpp: In function 'void Lee(int, int, int)':
paznici.cpp:110:6: error: redefinition of 'void Lee(int, int, int)'
 void Lee (int x, int y, int z)

      ^
paznici.cpp:24:6: error: 'void Lee(int, int, int)' previously defined here
 void Lee (int x, int y, int z)

      ^
paznici.cpp: In function 'int main()':
paznici.cpp:146:5: error: redefinition of 'int main()'
 int main()

     ^
paznici.cpp:60:5: error: 'int main()' previously defined here
 int main()

     ^
paznici.cpp:153:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(j=0; j<strlen(s); j++)

                            ^

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 Paznici 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!