Scrivi un programma o una funzione che accetta un numero intero positivo N e una griglia di cifre decimali (da 0 a 9) con larghezza W e altezza H (che sono anche numeri interi positivi). Puoi presumere che N sarà minore o uguale al maggiore di W e H.
Stampa o restituisce il più grande numero contiguo di N cifre che appare in orizzontale o in verticale nella griglia, scritto nell'ordine di lettura normale o al contrario.
- Le linee diagonali di cifre non sono considerate.
- La griglia non si avvolge, cioè non ha condizioni al contorno periodiche.
Ad esempio, la griglia 3 × 3
928
313
049
avrebbe 9
come output per N = 1, 94
come output per N = 2 e 940
come output per N = 3.
La griglia 4 × 3
7423
1531
6810
avrebbe 8
come output per N = 1, 86
per N = 2, 854
per N = 3 e 7423
per N = 4.
La griglia 3 × 3
000
010
000
avrebbe un output 1
per N = 1 e 10
per N = 2 e N = 3 ( 010
è valido anche per N = 3).
La griglia 1 × 1
0
avrebbe un output 0
per N = 1.
Puoi prendere l'input in qualsiasi formato ragionevole conveniente. ad esempio, la griglia potrebbe essere una stringa di cifre separata da una nuova riga, o una matrice multidimensionale, o un elenco di elenchi di cifre, ecc. Gli zero iniziali sono consentiti nell'output se facevano parte della griglia.
Si tratta di code-golf , quindi vince il codice più breve in byte, ma assegnerò anche punti brownie (ovvero voti più probabili) per le risposte che possono dimostrare che il loro algoritmo è efficiente dal punto di vista computazionale.