Detalii evaluare #52855817

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 #52855817 Utilizator Mihai Alexandru Dodan (euuuuuuuuuuuuuuuuuuuuuuu)
Fișier paznici.cpp Dimensiune 1.55 KB
Data încărcării 10 Octombrie 2024, 21:49 Scor / rezultat Eroare de compilare

Evaluare


Mesaj compilare

paznici.cpp:4:7: error: invalid preprocessing directive #Citirea
     # Citirea datelor din fisier

       ^
paznici.cpp:5:15: warning: character constant too long for its type [enabled by default]
     with open('paznici.in', 'r') as f:

               ^
paznici.cpp:7:9: error: stray '\304' in program
         clădire = [list(f.readline().strip()) for _ in range(n)]

         ^
paznici.cpp:7:9: error: stray '\203' in program
paznici.cpp:10:7: error: invalid preprocessing directive #Matricea
     # Matricea pentru camerele verificate

       ^
paznici.cpp:13:7: error: invalid preprocessing directive #Direc
     # Direcțiile de deplasare (sus, jos, stânga, dreapta)

       ^
paznici.cpp:16:7: error: invalid preprocessing directive #BFS
     # BFS pentru fiecare paznic

       ^
paznici.cpp:18:17: error: stray '#' in program
         i -= 1  # Ajustare la 0-index

                 ^
paznici.cpp:19:17: error: stray '#' in program
         j -= 1  # Ajustare la 0-index

                 ^
paznici.cpp:21:11: error: invalid preprocessing directive #Coada
         # Coada pentru BFS

           ^
paznici.cpp:22:37: error: stray '#' in program
         queue = deque([(i, j, 0)])  # (linie, coloană, distanță)

                                     ^
paznici.cpp:22:9: error: stray '\304' in program
         queue = deque([(i, j, 0)])  # (linie, coloană, distanță)

         ^
paznici.cpp:22:9: error: stray '\203' in program
paznici.cpp:22:9: error: stray '\310' in program
paznici.cpp:22:9: error: stray '\233' in program
paznici.cpp:22:9: error: stray '\304' in program
paznici.cpp:22:9: error: stray '\203' in program
paznici.cpp:28:27: error: stray '#' in program
             if dist < d:  # Verificăm dacă putem merge mai departe

                           ^
paznici.cpp:28:13: error: stray '\304' in program
             if dist < d:  # Verificăm dacă putem merge mai departe

             ^
paznici.cpp:28:13: error: stray '\203' in program
paznici.cpp:28:13: error: stray '\304' in program
paznici.cpp:28:13: error: stray '\203' in program
paznici.cpp:31:21: error: stray '\304' in program
                     if 0 <= nx < n and 0 <= ny < m and clădire[nx][ny] == '-' and not verificate[nx][ny]:

                     ^
paznici.cpp:31:21: error: stray '\203' in program
paznici.cpp:35:7: error: invalid preprocessing directive #Num
     # Numărăm camerele neverificate

       ^
paznici.cpp:36:5: error: stray '\304' in program
     count_neverificate = sum(1 for i in range(n) for j in range(m) if clădire[i][j] == '-' and not verificate[i][j])

     ^
paznici.cpp:36:5: error: stray '\203' in program
paznici.cpp:38:7: error: invalid preprocessing directive #Scrierea
     # Scrierea rezultatului în fisier

       ^
paznici.cpp:39:15: warning: character constant too long for its type [enabled by default]
     with open('paznici.out', 'w') as f:

               ^
paznici.cpp:1:1: error: 'from' does not name a type
 from collections import deque

 ^

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