Задача: Лабиринт на портали

Ограничения:
- Време: 2 секунди
- Памет: 256 MB

Описание:
Имаш квадратен лабиринт с размер N x N (2 <= N <= 500). Във всяка клетка има число от 0 до 9, което показва колко единици енергия ще ти отнеме да преминеш през нея. Можеш да се движиш нагоре, надолу, наляво или надясно.

В лабиринта има специални портали. Всеки портал е представен с буква 'A'-'Z'. Ако стъпиш на клетка с портал, можеш веднага да се преместиш на всяка друга клетка със същата буква без да харчиш енергия, но това отнема 1 единица време.

Трябва да намериш пътя с минимална сума от енергия и време от горния ляв ъгъл (0,0) до долния десен (N-1,N-1).

Вход:
- Първият ред съдържа N
- Следват N реда с N символа всеки. Всеки символ е '0'-'9' или 'A'-'Z'

Изход:
- Едно число – минималната стойност на енергия плюс време.

Пример:
Вход:
4
1A23
4567
89B1
2A3B

Изход:
12

Обяснение:
Роботът използва портала 'A' за бърз преход и избира път с минимална енергия и време.

Подзадачи:
1. N <= 50, няма портали.
2. N <= 500, портали позволени, всички числа <= 9.
