Nas damas chinesas , uma peça pode se mover pulando sobre qualquer outra peça ou fazendo uma sequência desses saltos. Sua tarefa é encontrar a maior seqüência possível de saltos.
Entrada
Uma sequência de 121 zeros ou uns, cada um representando um local em um quadro. Um zero significa que o local está vazio; um significa que o lugar está ocupado. As posições são listadas da esquerda para a direita; de cima para baixo. Por exemplo, a entrada dessa configuração seria
1011110011000001000000000000000000000000100000000001000000000000000000000000000001000000000000000000000001000001100111111
Explicação:
O local mais alto é ocupado por uma peça verde, então o primeiro dígito na entrada é
1
. A segunda linha tem uma posição vazia e, em seguida, uma posição ocupada, então01
vem a seguir. A terceira linha está toda ocupada, então111
. A quarta linha tem dois espaços vazios e dois ocupados (indo da esquerda para a direita)0011
. Depois vem cinco0
, a1
e sete0
para a próxima linha e assim por diante.
Como nessa configuração, há um canto apontando para cima. Pode haver qualquer número de peças no quadro (de 1 a 121). Observe que peças de cores diferentes não são representadas de maneira diferente.
Resultado
O comprimento máximo de um salto legal, usando qualquer peça no quadro. Você não pode visitar o mesmo local mais de uma vez (incluindo as posições inicial e final). No entanto, você pode pular a mesma peça mais de uma vez. Se não houver salto legal, produza 0
. Não considere se existe um movimento legal sem salto.
Por exemplo, a saída para a configuração descrita acima é 3
.
A entrada e a saída podem ser feitas por meio de stdin e stdout, por argumentos de linha de comando, por chamadas de função ou por qualquer método semelhante.
Casos de teste
Entrada:
0100000010000000000000000100000000000000000000000000000001010010000000000000000000000101000000000000000000100000000100001
Saída: 0
(não há duas peças uma ao lado da outra)
Entrada:
0000000000111100000000011100000000011000000000100000000000000000000000000000000000000000000000000000000000000000000000000
Saída: 1
(configuração inicial para um jogador no canto superior esquerdo)