Ești la o competiție de sărit pe trambulină. În cadrul ultimei probe, ai de parcurs un traseu în care trebuie să treci prin puncte de control într-o ordine anume, de la care vei colecta câte o ștampilă.
Traseul este de forma unui dreptunghi de dimensiuni format din trambuline. Pentru a crește dificultatea traseului, în unele locuri organizatorii au scos trambulinele și au lăsat spații libere unde nu poți să aterizezi.
Inițial sari pe loc la punctul de start, numerotat , iar după ce termini de adunat ștampilele trebuie să ajungi la punctul de finiș, numerotat .
Deoarece o componentă importantă a acestei probe este stăpânirea controlul asupra mișcărilor tale, de fiecare dată când sari ai voie să îți lungești sau scurtezi săritura cu cel mult , independent în ambele direcții (nord-sud și vest-est).
Poți considera că lungimea unei sărituri spre nord sau vest este reprezentată un număr pozitiv, iar spre sud sau est de un număr negativ. De exemplu, dacă te-ai deplasat cu spre sud la ultima săritură, la următoarea poți sări pe loc, cu spre sud, sau cu spre sud.
Cerință
Care este numărul minim de sărituri pe care trebuie să îl faci pentru a strânge toate ștampilele și a ajunge la poziția de finiș? Pentru a ajunge cu siguranță la poziția de finiș, trebuie ca ultima ta săritură să fie pe loc.
Date de intrare
Pe prima linie a fișierului de intrare trambuline.in
se găsesc două numere și , reprezentând lungimea și lățimea traseului.
Următoarele linii vor consta din caractere, #
reprezentând o trambulină și .
un spațiu liber.
Pe linia un număr , reprezentând numărul de puncte de control de pe traseu.
Pe următoarele linii câte două numere și , reprezentând poziția de start, poziția celor puncte de control și a poziției de finiș.
Date de ieșire
Pe prima linie a fișierului de ieșire trambuline.out
se va găsi numărul minim de sărituri necesare pentru terminarea traseului. Dacă acest lucru nu este posibil, afișați imposibil
.
Restricții și precizări
- ;
- ;
- Pentru , și .
Exemplu
trambuline.in
5 5
#####
#...#
#####
#####
#.#.#
1
1 1
5 5
1 4
trambuline.out
9