Problema da caminhada perfeita
From AdonaiMedrado.Pro.Br
Revision as of 17:53, 8 July 2009 by Adonaimedrado (Talk | contribs) (Protected "Problema da caminhada perfeita" [edit=sysop:move=sysop])
Contents
Dificuldade Única
Considere uma representação de um tabuleiro de Xadrez em uma matriz de String 8x8 e o seguinte padrão:
- T para Torre (movimentam-se N casas na vertical e horizontal).
- C para Cavalo (movimentam-se em L, um L por vez).
- B para Bispo (movimentam-se N casas em diagonal).
- Q para Rainha (movimentam-se N casas na vertical, horizontal e diagonal).
- K para Rei (movimenta-se uma casa por vez na vertical, horizontal e diagonal).
- 0 (zero) casa não ocupada.
Uma peça disposta neste tabuleiro executa uma caminha perfeita se é possivel que, em jogadas sucessivas, ela tome ("coma") todas as outras peças do tabuleiro sem que em nenhuma jogada deixe de tomar peça.
Faça um programa que, recebendo uma matriz 8x8 (oito linhas de oito caracteres), seja capaz de retornar um V se existir uma peça capaz de executar uma caminhada perfeita ou F caso não exista.
Exemplo 1
Entrada
0000000 0C00000 0000000 00T0000 0000Q00 0B00000 000K000 0000000
Saída
V
O cavalo é capaz de realizar uma caminhada perfeita.
Exemplo 2
Entrada
00000000 0T000000 00000000 00000000 0000Q000 000K0000 00B00000 0C000000
Saída
V
O bispo é capaz de realizar uma caminhada perfeita.
Exemplo 3
Entrada
00000000 00000000 00000000 00000000 0000T000 000K0000 00C00000 00000000
Saída
F