Faz uma cadeia de dominós.
Calcula uma forma de ordenar um determinado conjunto de dominós de modo a que formem uma cadeia de dominós correta (os pontos numa metade de uma pedra coincidem com os pontos da metade vizinha de uma pedra adjacente) e a que os pontos das metades das pedras que não têm vizinho (a primeira e a última pedra) coincidam entre si.
Por exemplo, dadas as pedras [2|1], [2|3] e [1|3], deves calcular algo como [1|2] [2|3] [3|1] ou [3|2] [2|1] [1|3] ou [1|3] [3|2] [2|1], etc., em que o primeiro e o último números são iguais.
Para as pedras [1|2], [4|1] e [2|3] a cadeia resultante não é válida: o primeiro e o último números de [4|1] [1|2] [2|3] não são iguais.
4 != 3
Alguns casos de teste podem usar pedras duplicadas numa solução de cadeia; assume que estão a ser usados vários conjuntos de dominós.
Inscreve-te no Exercism para aprenderes e dominares Haskell com 107 exercícios, e mentoria humana real, tudo grátis.