hike

Time limit: 5s Memory limit: 1024MB Input: Output:

Profesorul de informatică este recunoscut pentru două lucruri: problemele pe care le dă la clasă și pasiunea sa extremă pentru drumețiile montane. El susține mereu că, pentru a rezista la cele 4 ore de concentrare de la olimpiadă, ai nevoie de un fizic de fier și de mult aer curat. Așa că, înainte de vacanța de vară, el duce toți elevii de la mate-info într-o excursie.

Pentru a face lucrurile mai „interesante”, proful nu v-a dus pe un munte obișnuit. A folosit cunoștințele sale de generare procedurală a reliefului pentru a vă transpune într-o simulare virtuală a unui parc național de pe un plan bidimensional infinit.

El v-a explicat cum funcționează lumea lui:
„Vedeți voi, dragi elevi, altitudinea acestui munte infinit este definită de un șablon, o matrice de dimensiune n×nn \times n pe care am notat-o cu hh. Acest șablon se repetă periodic la nesfârșit în toate direcțiile. Mai exact, pentru orice numere întregi aa și bb, și pentru orice x,yx, y astfel încât 0x,y<n0 \le x, y < n, altitudinea la coordonatele (x+an,y+bn)(x + a \cdot n, y + b \cdot n) va fi exact h[x][y]h[x][y]!”

Când vă aflați la o poziție de coordonate (x,y)(x, y), vă puteți deplasa doar într-una dintre cele patru direcții cardinale, ajungând într-o poziție adiacentă: (x,y+1)(x, y + 1), (x+1,y)(x + 1, y), (x,y1)(x, y - 1) sau (x1,y)(x - 1, y).

Deoarece purtați rucsacuri grele pline cu laptopuri, efortul depus (măsurat în secunde) pentru a vă muta între două poziții adiacente depinde de diferența de nivel. Mai exact, timpul necesar este 1+alt1alt21 + |\text{alt}_1 - \text{alt}_2|, unde alt1\text{alt}_1 și alt2\text{alt}_2 sunt altitudinile poziției curente, respectiv ale poziției destinație.

Pornind de la tabăra de bază situată la coordonatele (0,0)(0, 0), proful se uită la ceas, zâmbește larg și vă lansează o provocare teoretică demnă de o eternitate:
„Timpul este relativ, dar să spunem că ați avea la dispoziție exact 102010^{20} secunde de drumeție. Câte poziții distincte de pe acest plan infinit ați putea vizita în acest interval uriaș de timp?”

Răspunsul vostru va fi considerat corect dacă eroarea sa relativă față de răspunsul exact al profului este mai mică de 10610^{-6}.

Date de intrare

Prima linie conține un număr întreg nn — dimensiunea matricei care descrie altitudinile.

Următoarele nn linii conțin câte nn numere întregi. Al (j+1)(j + 1)-lea număr de pe a (i+1)(i + 1)-a linie dintre acestea este h[i][j]h[i][j] — altitudinea poziției de bază (i,j)(i, j).

Date de ieșire

Afișați numărul de poziții distincte în care puteți ajunge într-un timp de cel mult 102010^{20} secunde.

Restrictii si precizari

  • 2n202 \le n \le 20
  • 0h[i][j]15450 \le h[i][j] \le 1545
  • Răspunsul va fi acceptat dacă eroarea relativă este mai mică de 10610^{-6}. Se recomandă afișarea rezultatului în notație științifică.

Exemplul 1

stdin

2
3 3
3 3

stdout

2e+40

Exemplul 2

stdin

3
0 0 0
0 1545 0
0 0 0

stdout

2e+40

Exemplul 3

stdin

4
0 1 2 3
5 6 7 4
10 11 8 9
15 12 13 14

stdout

1.524886878e+39

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