Напишіть програму або функцію, яка містить додатне ціле число N та сітку десяткових цифр (0 до 9) шириною W та висотою H (які також є натуральними числами). Можна припустити, що N буде меншим або рівним більшим за W і H.
Роздрукуйте або поверніть найбільше суміжне N-цифрне число, яке відображається горизонтально або вертикально в сітці, записане у звичайному порядку читання або зворотно.
- Діагональні лінії цифр не враховуються.
- Сітка не обертається, тобто не має періодичних граничних умов.
Наприклад, сітка 3 × 3
928
313
049
матиме 9як вихід для N = 1, 94як вихід для N = 2, і 940як вихід для N = 3.
Сітка 4 × 3
7423
1531
6810
матиме 8як вихід для N = 1, 86для N = 2, 854для N = 3 і 7423для N = 4.
Сітка 3 × 3
000
010
000
матиме вихід 1для N = 1, а 10для N = 2 і N = 3 ( 010справедливо також для N = 3).
Сітка 1 × 1
0
матиме вихід 0для N = 1.
Ви можете взяти дані в будь-якому зручному розумному форматі. наприклад, сітка може бути рядком з цифр, розділеним новим рядком, або багатовимірним масивом, або списком списків цифр і т. д. Провідні нулі допускаються у висновку, якщо вони були частиною сітки.
Це код-гольф , тому найкоротший код у байтах виграє, але я також присуджую очки брауні (тобто більш імовірні підсумки) за відповіді, які можуть показати, що їх алгоритм обчислювально ефективний.