Tour en la grilla
Se tiene una grilla de celdas. Las filas están numeradas de
a
y las columnas de
a
. Las celdas se numeran consecutivamente por filas, desde
hasta
, de modo que la celda ubicada en la fila
y la columna
tiene asignado el número
. En particular, la celda
corresponde a la esquina superior izquierda de la grilla, es decir, a la posición
. Por ejemplo, una grilla de
se numera de la siguiente manera:

Dos posiciones y
se consideran adyacentes si comparten un lado, es decir, si una se encuentra inmediatamente arriba, abajo, a la izquierda o a la derecha de la otra. Formalmente, esto ocurre cuando
.
Un tour es una secuencia de celdas distintas tal que las posiciones de cada par de celdas consecutivas
y
son adyacentes. La longitud de un tour es el número total de celdas que lo componen, es decir,
.
Se desea encontrar un tour que cumpla las siguientes condiciones:
- comienza en la celda
;
- termina en una celda con posición adyacente a la posición de la celda
.
Tu tarea es determinar la máxima longitud posible de un tour que cumpla estas condiciones y, además, imprimir explícitamente la secuencia de celdas visitadas en dicho tour.
Entrada
La única línea de la entrada contiene dos enteros y
(
)
las dimensiones de la grilla.
Salida
En la primera línea, imprime un único entero
la máxima longitud posible del tour.
En la segunda línea, imprime enteros separados por espacios
las celdas visitadas en el orden en que aparecen en el tour.
La secuencia impresa debe corresponder a un tour válido que alcance la longitud máxima .
Subtareas
Esta tarea está compuesta por subtareas.
Para cada subtarea, se otorgará el de los puntos correspondientes si se imprime correctamente la longitud máxima del tour. Se otorgará el
de los puntos si se imprime tanto la longitud máxima correcta como un tour válido que la alcance.
| Subtarea | Puntos | Restricciones adicionales | Dependencias |
|---|---|---|---|
| Sin restricciones adicionales. |
Ejemplos
Entrada 1
3 3
Salida 1
8
1 4 5 8 9 6 3 2
El tour corresponde a las posiciones . Note que cada par de posiciones consecutivas son adyacentes entre sí y que la posición
es adyacente a la posición
.
Entrada 2
2 2
Salida 2
4
1 2 4 3
Comments