Trilhas
/
Scala
Scala
/
Exercícios
/
Auxiliar de Killer Sudoku
Auxiliar de Killer Sudoku

Auxiliar de Killer Sudoku

Médio

Instruções

Uma pessoa que você conhece está aprendendo a resolver Killer Sudokus (regras abaixo), mas está com dificuldade para descobrir quais dígitos podem entrar em uma gaiola. Ela pede que você ajude escrevendo um pequeno programa que liste todas as combinações válidas para uma determinada gaiola, e também quaisquer restrições que afetem essa gaiola.

Para deixar a saída do seu programa fácil de ler, as combinações retornadas devem estar ordenadas.

Regras do Killer Sudoku

  • As regras padrão do Sudoku se aplicam.
  • Os dígitos de uma gaiola, geralmente marcados por uma linha pontilhada, somam o pequeno número indicado no canto da gaiola.
  • Um dígito só pode aparecer uma vez em cada gaiola.

Para uma explicação mais detalhada, confira este guia.

Exemplo 1: Gaiola com apenas 1 combinação possível

Em uma gaiola de 3 dígitos com soma 7, existe apenas uma combinação válida: 124.

  • 1 + 2 + 4 = 7
  • Qualquer outra combinação que some 7, como 232, violaria a regra de não repetir dígitos dentro de uma gaiola.

Grade de Sudoku com três gaiolas killer marcadas como agrupadas.
A primeira gaiola killer está no bloco 3×3 do canto superior esquerdo da grade.
A coluna do meio desse bloco forma a gaiola, com as seguintes casas de cima para baixo: a primeira casa contém um 1 e uma marca a lápis de 7, indicando uma soma de gaiola igual a 7, a segunda casa contém um 2, a terceira casa contém um 5.
Os números estão destacados em vermelho para indicar um erro.
A segunda gaiola killer está no bloco 3×3 central da grade.
A coluna do meio desse bloco forma a gaiola, com as seguintes casas de cima para baixo: a primeira casa contém um 1 e uma marca a lápis de 7, indicando uma soma de gaiola igual a 7, a segunda casa contém um 2, a terceira casa contém um 4.
Nenhum dos números dessa gaiola está destacado e, portanto, ela não contém erros.
A terceira gaiola killer acompanha o canto externo do bloco 3×3 central da grade.
Ela é formada pelas três casas a seguir: a casa superior esquerda da gaiola contém um 2, destacado em vermelho, e uma soma de gaiola igual a 7.
A casa superior direita da gaiola contém um 3.
A casa inferior direita da gaiola contém um 2, destacado em vermelho. Todas as outras casas estão vazias.

Exemplo 2: Gaiola com várias combinações

Em uma gaiola de 2 dígitos com soma 10, existem 4 combinações possíveis:

  • 19
  • 28
  • 37
  • 46

Grade de Sudoku, todos os quadrados vazios, exceto a coluna do meio, a coluna 5, que tem 8 linhas preenchidas.
Cada duas linhas contíguas formam uma gaiola killer e estão marcadas como agrupadas.
De cima para baixo: o primeiro grupo é uma casa com o valor 1 e uma marca a lápis indicando uma soma de gaiola igual a 10, e uma casa com o valor 9.
O segundo grupo é uma casa com o valor 2 e uma marca a lápis de 10, e uma casa com o valor 8.
O terceiro grupo é uma casa com o valor 3 e uma marca a lápis de 10, e uma casa com o valor 7.
O quarto grupo é uma casa com o valor 4 e uma marca a lápis de 10, e uma casa com o valor 6.
A última casa da coluna está vazia.

Exemplo 3: Gaiola com várias combinações, mas com restrições

Em uma gaiola de 2 dígitos com soma 10, onde a coluna já contém um 1 e um 4, existem 2 combinações possíveis:

  • 28
  • 37

19 e 46 não são possíveis por causa do 1 e do 4 na coluna, de acordo com as regras padrão do Sudoku.

Grade de Sudoku, todos os quadrados vazios, exceto a coluna do meio, a coluna 5, que tem 8 linhas preenchidas.
A primeira linha contém um 4, a segunda está vazia e a terceira contém um 1.
O 1 está destacado em vermelho para indicar um erro.
As últimas 6 linhas da coluna formam gaiolas killer de duas casas cada.
De cima para baixo: o primeiro grupo é uma casa com o valor 2 e uma marca a lápis indicando uma soma de gaiola igual a 10, e uma casa com o valor 8.
O segundo grupo é uma casa com o valor 3 e uma marca a lápis de 10, e uma casa com o valor 7.
O terceiro grupo é uma casa com o valor 1, destacado em vermelho, e uma marca a lápis de 10, e uma casa com o valor 9.

Tente por conta própria

Se você quiser encarar um Killer Sudoku acessível, pode tentar este quebra-cabeça do Clover, apresentado por Mark Goodliffe no Cracking The Cryptic em 21 de junho de 2021.

Você também encontra Killer Sudokus de dificuldade variada em vários jornais, além de apps, livros e sites de Sudoku.

Créditos

As capturas de tela acima foram geradas usando o F-Puzzles.com, uma ferramenta de criação de quebra-cabeças de Eric Fox.

Editar via GitHub O link abre em uma nova janela ou aba
Scala Exercism

Tudo pronto para começar Auxiliar de Killer Sudoku?

Crie sua conta no Exercism para aprender e dominar Scala com 95 exercícios e mentoria humana de verdade, tudo de graça.