#4814
Áles se află într-un castel, reprezentat printr-o matrice A
cu N
linii și N
coloane, fiecare element corespunzând unei camere. Fiecare cameră are asociat câte un număr natural de la 1
la N
, care este memorat în elementul corespunzător din matrice. Oricare două camere cu același număr asociat sunt conectate printr-un tunel. De asemenea, fiecare cameră este conectată printr-o ușă cu o cameră vecină, elementele corespunzătoare acestora fiind în matrice pe acceași linie și pe coloane alăturate sau pe aceeași coloană și pe linii alăturate. Scopul lui Áles este să viziteze toate camerele, fiecare cel puțin o dată, astfel încât numerele asociate lor, în ordinea vizitării acestora, să formeze un şir crescător, începând de la 1
.
Áles alege la început o cameră care are asociat numărul 1
. Din fiecare cameră ce corespunde unui element \(A_{i,j}\) el poate vizita:
Ați înțeles, Áles doreşte să folosească teleportorul de cât mai puţine ori! El calculează mai întâi numărul minim necesar de teleportări pentru configurația inițială a camerelor, apoi face, pe rând, Q
transformări succesive ale configurației, prin schimbarea numărului asociat pentru câte o cameră; după fiecare astfel de transformare, calculează din nou numărul minim necesar de teleportări pentru configurația respectivă.
Pentru configurația inițială, precum și după fiecare dintre cele Q transformări ale acesteia, în ordinea în care sunt realizate, determinați numărul minim de teleportări necesare pentru ca Áles să își îndeplinească scopul.
OJI 2025, clasa a 9-a
Problema | teleportor | Operații I/O |
![]() teleportor.in /teleportor.out
|
---|---|---|---|
Limita timp | 0.6 secunde | Limita memorie |
Total: 128 MB
/
Stivă 32 MB
|
Id soluție | #57753736 | Utilizator | |
Fișier | teleportor.cpp | Dimensiune | 1.50 KB |
Data încărcării | 14 Aprilie 2025, 14:39 | Scor / rezultat | 100 puncte |
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 7 | 7 | ||
2 | 0 secunde | OK. | 7 | 7 | ||
3 | 0 secunde | OK. | 7 | 7 | ||
4 | 0 secunde | OK. | 8 | 8 | ||
5 | 0 secunde | OK. | 5 | 5 | ||
6 | 0 secunde | OK. | 5 | 5 | ||
7 | 0 secunde | OK. | 5 | 5 | ||
8 | 0 secunde | OK. | 5 | 5 | ||
9 | 0 secunde | OK. | 3 | 3 | ||
10 | 0.224 secunde | OK. | 4 | 4 | ||
11 | 0.228 secunde | OK. | 4 | 4 | ||
12 | 0.232 secunde | OK. | 4 | 4 | ||
13 | 0.224 secunde | OK. | 4 | 4 | ||
14 | 0.232 secunde | OK. | 4 | 4 | ||
15 | 0.112 secunde | OK. | 7 | 7 | ||
16 | 0.112 secunde | OK. | 7 | 7 | ||
17 | 0.212 secunde | OK. | 7 | 7 | ||
18 | 0.232 secunde | OK. | 7 | 7 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema teleportor 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ă.