Escriba un programa o función que tome un entero positivo N y una cuadrícula de dígitos decimales (0 a 9) con ancho W y altura H (que también son enteros positivos). Puede suponer que N será menor o igual que el mayor de W y H.
Imprima o devuelva el número de N dígitos contiguos más grande que aparece horizontal o verticalmente en la cuadrícula, escrito en orden de lectura normal o al revés.
- No se consideran líneas diagonales de dígitos.
- La cuadrícula no se ajusta, es decir, no tiene condiciones de contorno periódicas.
Por ejemplo, la cuadrícula 3 × 3
928
313
049
tendría 9como salida para N = 1, 94como salida para N = 2 y 940como salida para N = 3.
La cuadrícula 4 × 3
7423
1531
6810
tendría 8como salida para N = 1, 86para N = 2, 854para N = 3 y 7423para N = 4.
La cuadrícula 3 × 3
000
010
000
tendría salida 1para N = 1, y 10para N = 2 y N = 3 ( 010también es válido para N = 3).
La cuadrícula 1 × 1
0
tendría salida 0para N = 1.
Puede tomar la entrada en cualquier formato razonable conveniente. por ejemplo, la cuadrícula podría ser una cadena de dígitos separada por una nueva línea, o una matriz multidimensional, o una lista de listas de dígitos, etc. Los ceros iniciales están permitidos en la salida si fueran parte de la cuadrícula.
Este es el código de golf , por lo que gana el código más corto en bytes, pero también otorgaré puntos brownie (es decir, votos más probables) por respuestas que pueden mostrar que su algoritmo es computacionalmente eficiente.

Respuestas:
Pyth,
2219 bytes3 bytes gracias a Jakube.
Pruébalo en línea.
Si se nos permite imprimir ceros a la izquierda, el código es de 18 bytes:
fuente
s.CJam,
39363534 bytesSolo rápidamente, antes de que @Dennis se despierte: P
Pruébalo en línea .
Explicación
El algoritmo básico es tomar las cuatro rotaciones de la cuadrícula y dividir cada fila en trozos de longitud
N(o la longitud de la fila, la que sea menor). Luego convierta los trozos a ints y tome el más grande.fuente
fewhace algo especial o son tres comandos separados?ewaplicó usandof, o "mapa con parámetro adicional". Por ejemplo,["abcd" "efgh"] 2 fewresultados en[["ab" "bc" "cd"] ["ef" "fg" "gh"]].Burlesco
Todavía no es una respuesta final, pero probablemente funcionará así:
¿Cómo se dan exactamente N y la cuadrícula?
fuente