Considerad un tablero , donde cada casilla contiene el coste de pasar por ella. Tenéis que comenzar en la fila de arriba (0) y acabar en la fila de abajo () con el mínimo coste posible, haciendo siempre movimientos que incrementen la fila donde os encontráis. En general, sólo podéis moveros a casillas adyacentes (verticalmente o en diagonal), con una excepción: podéis hacer un máximo de saltos de un caballo de ajedrez (siempre hacia abajo, hasta cuatro opciones posibles).
La entrada consiste en varios casos, sólo con números naturales. Cada caso empieza con , y , seguidas de filas con costes. Suponed que y están entre 1 y 100, que está entre 0 y 100, y que los costes están entre 0 y .
Para cada caso, escribid el mínimo coste de ir desde la fila de arriba hasta la fila de abajo haciendo como máximo saltos de caballo. Podéis comenzar y acabar en las columnas que queráis.
Input
3 4 1 10 12 14 16 70 60 50 40 99 33 50 23 1 1 3 42 4 7 3 0 9 9 9 9 9 1 9 9 9 9 1 9 1 9 9 1 9 9 9 9 9 9 9 1 9 9 9
Output
37 42 3