¡Los caballos inundan el tablero de ajedrez! Hemos dejado a de ellos repartidos por un tablero rectangular de tamaño , y te pedimos que calcules, para cada casilla del tablero, de cuántos modos es posible mover cualquiera de los caballos para llegar a la casilla en exactamente saltos. (Suponemos que sabes que el caballo es una ficha que hace saltos en forma de L, avanzando dos casillas en una dirección cualquiera y otra en una dirección perpendicular a la anterior. Si tienes cualquier duda, !‘pregunta!).
Por ejemplo, en el tablero siguiente,
| X | ||||
|---|---|---|---|---|
el caballo marcado como puede llegar a en 3 saltos de exactamente 3 modos (dos de ellos, por cierto, ocupando la casilla donde está antes de llegar a ). En cambio, el caballo puede llegar a en 3 saltos de 6 modos distintos (de los 6, en 4 de ellos hace un salto que luego deshace, y a continuación salta a ; de los 6, en 2 de ellos pasa por antes de acabar en : eso está permitido). Por lo tanto, hay modos de llegar a la casilla .
Te pedimos que calcules el número total de modos de llegar a cada una de las casillas del tablero en saltos.
Cada entrada empieza con el número de casos. Cada caso se da en una línea, con los números , y separados por espacios, y líneas con las coordenadas iniciales de los caballos: dos números entre y (fila) y entre y (columna). Se te garantiza que las dimensiones del tablero y no serán mayores de , y que será menor de . El número de caballos será inferior a . Además, podría pasar que varios caballos ocuparan la misma casilla inicial: en tal caso, usar cada uno de ellos contabilizaría como un modo distinto de llegar a la casilla objetivo.
Para cada caso, escribe
filas de
números cada una, separados por comas, con el número de modos de llegar
a la casilla correspondiente. Se entiende que el primer número de la
primera fila corresponde a la casilla
,
y que el último número de la última fila corresponde a la casilla
.
Si el número que debieras escribir es mayor que
,
escribe
1e8.
Escribe tres guiones --- después de cada caso de
pruebas.
Hay 10 entradas. Tu programa recibirá 10 puntos por cada entrada resuelta. Las dimensiones , de la entrada -ésima no serán mayores de . Además, el número será en las primeras 3 entradas, menor que en las siguientes 3 entradas, y menor que en las restantes 4 entradas. Además, el número será menor que y en las primeras 5 entradas, y menor que en las restantes 5.
Prueba: Final OIE-10
Autor: Omer Giménez
Input
5 3 3 1 0 1 1 3 3 1 1 1 1 3 3 1 2 1 1 3 3 1 3 1 1 3 3 1 1 2 2
Output
1,0,0 0,0,0 0,0,0 --- 0,0,0 0,0,1 0,1,0 --- 2,0,1 0,0,0 1,0,0 --- 0,1,0 1,0,3 0,3,0 --- 0,0,0 0,0,0 0,0,0 ---
Input
2 4 5 2 3 2 1 3 4 4 5 3 3 2 1 3 4 3 4
Output
5,0,16,0,9 0,11,0,5,0 5,0,14,0,6 0,14,0,8,0 --- 8,0,24,0,15 0,18,0,7,0 8,0,19,0,10 0,22,0,12,0 ---
Input
3 3 7 1 17 1 1 3 7 1 18 1 1 3 7 1 19 1 1
Output
0,30966528,0,40933440,0,31041912,0 25452160,0,38868872,0,38498680,0,25712512 0,30971272,0,40939968,0,31046400,0 --- 69840144,0,>1e8,0,>1e8,0,69545080 0,81873408,0,>1e8,0,81873408,0 69835400,0,>1e8,0,>1e8,0,69540592 --- 0,>1e8,0,>1e8,0,>1e8,0 >1e8,0,>1e8,0,>1e8,0,>1e8 0,>1e8,0,>1e8,0,>1e8,0 ---