Como cualquier buen peregrino sabe, los albergues que uno encuentra por los caminos suelen tener grandes habitaciones donde hileras de camas unas junto a las otras esperan a ser ocupadas.
Aunque esas camas han sido usadas por infinidad de gentes antes, el cansancio hace que a uno no le importe tumbarse en colchones raídos por el tiempo con tal de dormir un puñado de horas seguidas y coger fuerzas para la jornada siguiente.
De hecho, para maximizar las posibilidades de dormir bien, lo más importante no es la salubridad del colchón, sino la distancia con tu vecino peregrino más cercano. Y es que una noche con un desconocido en la cama de al lado roncando puede arruinarte la noche mucho más que un puñado de ácaros.
Cuando entras en una de estas habitaciones, pues, el objetivo es encontrar la cama que maximice la distancia con el vecino más cercano (hacia cualquiera de los lados).
La entrada está formada por distintos casos de prueba representando la ocupación de una hilera de camas una noche del camino.
Cada hilera aparece en una única línea que contiene una secuencia de . y X (hasta 500.000 caracteres). Los puntos representan camas libres, mientras que las X representan camas ocupadas. Se garantiza que habrá siempre al menos una cama libre y otra ocupada.
Por cada caso de prueba se escribirá una línea con el número de camas vacías más grande posible que se puede conseguir entre la cama seleccionada y tu vecino más cercano.
.X.X. .X...X. .X....X. ...X
0 1 1 2