#4806
Andrei se află într-un labirint format dintr-o matrice de camere, fiecare având unul dintre următoarele tipuri: 0: cameră cu bec stins, 1: cameră cu bec aprins, 2: cameră fără bec (inaccesibilă), 3: cameră cu întrerupător.
Camerele de tip 3 pot aprinde/stinge becurile altor camere. Andrei poate alege să apese sau nu întrerupătoarele întâlnite. El pornește dintr-o cameră dată și trebuie să ajungă într-o cameră destinație, deplasându-se doar prin camere aprinse.
Se cere determinarea distanței minime pentru a ajunge la destinație.
Concursul Național de Matematică și Informatică Grigore Moisil
| Problema | EscapeLight | Operații I/O |
escapelight.in/escapelight.out
|
|---|---|---|---|
| Limita timp | 0.7 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
| Id soluție | #63651357 | Utilizator | |
| Fișier | escapelight.cpp | Dimensiune | 3.82 KB |
| Data încărcării | 12 Martie 2026, 17:51 | Scor/rezultat | Eroare de compilare |
escapelight.cpp: In function 'int main()': escapelight.cpp:84:41: error: a function-definition is not allowed here before '{' token inline int IDX(int x, int y, int m) { return ((x * M + y) * S + m); } ^ escapelight.cpp:87:23: error: 'IDX' was not declared in this scope dist[IDX(xs, ys, 0)] = 0; ^ escapelight.cpp:44:37: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &type[i][j]); ^ escapelight.cpp:47:45: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d %d %d %d", &xs, &ys, &xt, &yt); ^ escapelight.cpp:51:31: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d %d", &K, &Pdecl); // Pdecl is not needed (we derive) ^ escapelight.cpp:62:53: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d %d %d %d", &xswi, &yswi, &xl, &yl); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema EscapeLight 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ă.