Copaci

Time limit: 0.15s Memory limit: 64MB Input: copaci.in Output: copaci.out

Pentru a se relaxa, Dan se plimbă printr-o pădure virtuală formată din N×NN \times N copaci, așezați sub forma unei matrici pătratice cu NN linii și NN coloane. Pe fiecare copac este scrisă o cifră din baza 1010.
Plimbarea lui Dan începe de la un copac aflat într-o poziție de coordonate necunoscute și constă dintr-o succesiune de pași. La fiecare pas, Dan se va deplasa la unul dintre copacii vecini. Doi copaci sunt vecini dacă se află pe aceeași linie pe coloane consecutive, sau se află pe aceeași coloană, pe linii consecutive. Pe parcursul plimbării, Dan memorează într-un șir SS cifrele scrise pe copacii aflați în pozițiile prin care a trecut. Fiind însă foarte obosit, este posibil ca la un moment dat să fi memorat greșit cifrele în șirul SS.

Cerință

Dată fiind matricea care reprezintă pădurea virtuală, precum și șirul SS în care au fost memorate cifrele de pe copacii situați în pozițiile vizitate de Dan pe parcursul plimbării, să se determine numărul maxim de poziții vizitate pe parcursul plimbării, până la prima cifră memorată greșit în șirul SS.

Date de intrare

Fişierul de intrare copaci.in conţine pe prima linie numărul natural NN. Pe următoarele NN linii se află câte NN cifre, reprezentând cifrele scrise pe copacii din pădurea virtuală, în ordinea liniilor, iar pentru copacii de pe aceeași linie, în ordinea coloanelor. Pe ultima linie se află cifrele memorate în șirul SS. În fișierul de intrare nu sunt spații.

Date de ieșire

Fișierul de ieșire copaci.out va conține o singură linie pe care va fi scris un singur număr natural, reprezențând răspunsul la cerința dată.

Restricții și precizări

  • 1N1001 \leq N \leq 100
  • 1S1051 \leq |S| \leq 10^5
# Punctaj Restricții
1 20 N10N \leq 10 și S100\| S \| \leq 100
2 80 Fără resticții suplimentare.

Exemplul 1

copaci.in

3
769
617
502
97205562

copaci.out

5

Explicație

Numărul maxim de poziții parcurse până la prima cifră memorată greșit în SS este 55. O plimbare posibilă este:
7 6 9\textcolor{white}{7 \ 6} \ \textcolor{blue}{9}
6 1 7\textcolor{white}{6 \ 1} \ \textcolor{blue}{7}
5 0 2\textcolor{blue}{5 \ 0 \ 2}

Exemplul 2

copaci.in

3
125
452
803
32541

copaci.out

5

Explicație

Șirul SS este corect în întregime. O plimbare posibilă este:
1 2 5\textcolor{blue}{1} \ \textcolor{white}{2 \ 5}
4 5 2\textcolor{blue}{4 \ 5 \ 2}
8 0 3\textcolor{white}{8 \ 0} \ \textcolor{blue}{3}

Exemplul 3

copaci.in

5
36231
92928
08044
51868
43301
6281864292913

copaci.out

11

Explicație

Numărul maxim de poziții parcurse până la prima cifră memorată greșit în SS este 1111. O plimbare posibilă este:
3 6 2 3 1\textcolor{white}{3} \ \textcolor{blue}{6} \ \textcolor{white}{2 \ 3 \ 1}
9 2 9 2 8\textcolor{blue}{9} \ \textcolor{purple}{2} \ \textcolor{blue}{9 \ 2} \ \textcolor{white}{8}
0 8 0 4 4\textcolor{white}{0} \ \textcolor{blue}{8} \ \textcolor{white}{0} \ \textcolor{blue}{4} \ \textcolor{white}{4}
5 1 8 6 8\textcolor{white}{5} \ \textcolor{blue}{1 \ 8 \ 6} \ \textcolor{white}{8}
4 3 3 0 1\textcolor{white}{4 \ 3 \ 3 \ 0 \ 1}
Observați că pe parcursul plimbării Dan poate trece de mai multe ori prin aceeași poziție.

Exemplul 4

copaci.in

2
30
47
121

copaci.out

0

Explicație

Numărul maxim de poziții parcurse până la prima cifră memorată greșit în SS este 00, pentru că nu există niciun copac pe care să fie scrisă cifra 11.

Log in or sign up to be able to send submissions!