Esta questão é inspirada e é o inverso desta .
Dennis ( E
), maçaneta ( D
), Martin ( M
) e Chris ( C
) pediram uma pizza. A pizza retangular é dividida em pedaços quadrados, cada um marcado com o pretendido.
Escreva um programa ou função que, dada uma pizza retangular com 0 ou mais de cada letra, determine se:
Cada fatia de cada pessoa está conectada ao caminho . Isso significa que todas as letras iguais devem ser diretamente adjacentes uma à outra (sem conexões diagonais).
O número de fatias por pessoa é o mesmo para todos.
Você deve gerar um valor de verdade / falsidade com uma nova linha à direita opcional que indique se a pizza especificada é justa ou não.
Casos de teste válidos:
DDDDDDDDDDDDMCCCCCCCCCCC
DEEEEEEEEEEDMMMMMMMCCCCC
DEEEEEEEEEEDMMMCCCCCCCCC
DEEEEEEEEEEDMMMMMMMMCCCC
DDDDDDDDDDDDMMMMMMMMMMMC
DEMC
DD
EE
MC
MC
EEDDMMMCCC
EEEDDDMMCC
Casos de teste inválidos:
EDM
EDMCCMDE
DDDDDDDDDDDDMCCCCCCCCCCC
DEEEEEEEEEEDMMMMMMMCCCCC
DEEEEEEEEEEMDMMCCCCCCCCC
DEEEEEEEEEEDMMMMMMMMCCCC
DDDDDDDDDDDDMMMMMMMMMMMC
DDMMEECC
DMMEECCC
O menor código em bytes vence.
DDDDDDDDDDDDD
<- uma pizza justa