Harta Galaxiei este reprezentată ca o matrice cu N
linii (numerotate de la 1
la N
) şi M
coloane (numerotate de la 1
la M
). Orice element al matricei reprezintă o zonă de formă pătrată cu latura de 1
an lumină (denumită quadrant) şi poate fi identificat prin coordonatele sale (numărul liniei şi respectiv numărul coloanei pe care află).
Nava Enterprise se află într-un quadrant de coordonate cunoscute şi trebuie să ajungă la destinaţie (un alt quadrant, diferit de cel de plecare, de coordonate de asemenea cunoscute).
Nava se poate deplasa de la un quadrant la unul dintre cei învecinaţi pe orizontală sau verticală într-o unitate de timp (mai exact, din zona de coordonate (L,C)
nava se poate deplasa în una dintre zonele de coordonate (L-1,C)
, (L+1,C)
, (L,C-1)
, (L,C+1)
, fără a ieşi de pe hartă).
În plus, în unele zone (quadranţi) se găsesc porţi stelare. O poartă stelară permite deplasarea navei într-o unitate de timp în oricare altă zonă în care se găseşte o altă poartă stelară. Dacă în drumul său nava ajunge într-o zonă cu o poartă stelară, nava se poate deplasa într-o altă zonă cu poartă stelară sau poate să-şi continue drumul în una dintre zonele învecinate.
Cerința
Determinați timpul minim în care nava poate ajunge din zona inițială în cea finală, precum și numărul de trasee de durată minimă.
Date de intrare
Fișierul de intrare poarta.in
conţine pe prima linie numerele naturale N M K
, reprezentând în ordine, numărul de linii, numărul de coloane şi respectiv numărul de porți stelare de pe hartă. Pe cea de-a doua linie, se află 4
numere naturale L1 C1 L2 C2
, reprezentând coordonatele zonei de plecare, respectiv coordonatele zonei destinaţie. Pe următoarele K
linii sunt scrise coordonatele zonelor în care se află porţi stelare, câte o poartă pe o linie. Numerele de pe aceeaşi linie sunt separate prin câte un spaţiu.
Date de ieșire
Fișierul de ieșire poarta.out
va conține două linii. Pe prima linie va fi scris numărul natural D
, reprezentând timpul minim în care nava ajunge din zona iniţială la destinaţie. Pe cea de-a doua linie va fi scris numărul natural Nr
, reprezentând numărul de trasee de durată minimă. Deoarece numărul Nr
poate fi foarte mare, trebuie să afişaţi restul împărţirii lui Nr
la 997
.
Restricții și precizări
1 ≤ N,M ≤ 100
0 ≤ K ≤ 1000
- Zona iniţială a navei, zona destinaţie, precum şi zonele în care se află porţi stelare sunt distincte.
- Pentru 20% dintre teste
1 ≤ N,M ≤ 10; 0 ≤ K ≤ 10
- Pentru determinarea corectă a timpului minim se acordă 30% din punctaj. Pentru determinarea corectă a timpului minim şi a numărului de trasee de durată minimă se acordă punctajul maxim.
Exemplu:
poarta.in
6 7 4 2 5 6 2 1 1 5 1 1 6 4 5
poarta.out
5 6
Explicație
Harta Universului are 6
linii şi 7
coloane. Ea conţine 4
porţi stelare (1,2,3,4)
. Nava Enterprise se află iniţial în zona de coordonate (2,5)
şi are ca destinaţie zona de coordonate (6,2)
.
Durata minimă deplasării de la (2,5)
la (6,2)
este 5
, un traseu posibil de durată 5
fiind: (2,5)→(2,6) →(1,6) →(5,1) →(5,2) →(6,2)
.
Există 6
trasee de lungime minimă 5
.