ForHosting KIT · Ferramentas para dev

Verificar sudoku: conflitos em linhas, colunas e blocos

Um único dígito repetido pode invalidar uma posição de sudoku muito antes de o erro ficar evidente.

● BetaGrátis · no seu navegador
Use pelo WebAPIE-mailTelegramApp em breve

Este verificador examina uma grade padrão completa ou parcial e identifica todas as células preenchidas envolvidas em um conflito imediato. Ele verifica linhas, colunas e blocos 3x3 separadamente, ignora células vazias e retorna coordenadas estáveis com o motivo de cada marcação. Não resolve o quebra-cabeça nem revela valores ausentes, sendo adequado para prática, edição, ensino e validação automatizada.

Formate a grade antes da verificação

Informe uma grade padrão de sudoku em nove linhas com nove células em cada uma. Células preenchidas devem usar dígitos de 1 a 9. Escreva ponto ou zero para uma célula vazia; as duas formas têm o mesmo significado e não participam da detecção de duplicatas. Espaços, vírgulas e barras verticais podem separar as células para facilitar a leitura, portanto tanto a notação compacta quanto a visualmente espaçada são aceitas. O verificador remove esses separadores, mas não interpreta nem corrige outros caracteres. Essa regra mantém distinta uma entrada malformada de uma grade com formato correto que viola o sudoku. A solicitação retorna erro quando não há exatamente nove linhas, quando alguma linha não contém nove células após a remoção dos separadores ou quando aparece um caractere incompatível. Grades parciais são aceitas, desde as pistas iniciais até partidas em andamento ou tabuleiros quase completos. Uma grade totalmente vazia é estruturalmente válida, pois não existem células preenchidas em conflito. O verificador avalia apenas a posição enviada e nunca preenche espaços nem altera os valores fornecidos.

Entenda o relatório de conflitos por célula

O resultado começa com o valor booleano <code>valid</code>. Ele é verdadeiro quando nenhuma célula preenchida compartilha o mesmo dígito com outra na mesma linha, coluna ou bloco 3x3. A contagem <code>filled_cells</code> mostra quantas entradas não vazias foram examinadas. Se a posição for inválida, <code>conflict_cells</code> lista todas as células envolvidas usando coordenadas de linha e coluna iniciadas em um, além do dígito armazenado e de um ou mais motivos. Cada motivo informa o tipo de regra, o índice da unidade e o valor repetido. Uma célula pode ter vários motivos: um cinco repetido, por exemplo, pode violar a linha e o bloco superior esquerdo ao mesmo tempo. Ambos permanecem visíveis. Relatar cada célula afetada permite que interfaces realcem diretamente os locais problemáticos. A saída é determinística: as células seguem a ordem de leitura e os motivos aparecem como linha, coluna e bloco. Células vazias nunca são listadas. Se houver três cópias de um dígito em uma unidade, todas as três são marcadas, e não apenas um par arbitrário.

Saiba o que a validade do sudoku realmente comprova

Esta análise responde a uma pergunta específica: a posição atual viola imediatamente a regra de unicidade de alguma linha, coluna ou bloco? Uma resposta válida não prova que o quebra-cabeça pode ser resolvido, que possui uma única solução ou que o conjunto de pistas é adequado. Algumas posições não contêm duplicatas diretas, mas continuam impossíveis porque escolhas anteriores eliminam todos os candidatos de outra célula. Isso exige um solucionador ou uma análise de viabilidade mais profunda, que esta capacidade não executa. O escopo restrito é útil quando o feedback deve apontar erros sem revelar respostas. Uma ferramenta educacional pode destacar as células duplicadas; um editor pode validar as pistas após cada alteração; e um fluxo de importação pode rejeitar registros danificados antes de um processamento mais caro. O cálculo percorre no máximo 81 células e não usa rede, aleatoriedade, relógio nem estado externo. Assim, a mesma entrada sempre gera a mesma saída estruturada. A experiência no navegador executa a lógica pura localmente, enquanto uma automação pode solicitar a API por US$ 0,002 por item e armazenar as coordenadas dos conflitos para revisão posterior.

Confira uma partida em andamento

Encontre entradas repetidas em um tabuleiro parcial sem pedir que um solucionador revele dígitos ausentes.

Revise as pistas de um sudoku

Valide uma grade recém-digitada e destaque todas as células envolvidas em uma violação imediata.

Proteja um fluxo de importação

Separe textos malformados de registros de sudoku bem estruturados, porém conflitantes, antes do processamento.

Posso verificar um sudoku incompleto?

Sim. Use um ponto ou zero em cada célula vazia. As células vazias são ignoradas na procura por duplicatas.

Um resultado válido significa que o sudoku tem solução?

Não. Ele indica apenas que as entradas atuais não se repetem em nenhuma linha, coluna ou bloco. Não comprova solução nem unicidade.

Por que uma célula pode ter vários motivos de conflito?

A mesma entrada pode repetir um dígito simultaneamente em sua linha, coluna e bloco. Cada regra violada é informada separadamente.

As coordenadas começam em zero?

Não. Linhas, colunas e índices de unidade começam em 1 para corresponder à descrição habitual de uma grade de sudoku.

Quanto custa uma verificação pela API?

Cada item processado pela API custa US$ 0,002. O verificador interativo no navegador pode ser executado localmente de forma gratuita.

Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.

POSThttps://api.kit.forhosting.com/hobby/game-sudoku-validity

Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.

curl -X POST https://api.kit.forhosting.com/hobby/game-sudoku-validity \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"grid":"53..7....\n6..195...\n.98....6.\n8...6...3\n4..8.3..1\n7...2...6\n.6....28.\n...419..5\n....8..79"}'
{
  "grid": "53..7....\n6..195...\n.98....6.\n8...6...3\n4..8.3..1\n7...2...6\n.6....28.\n...419..5\n....8..79"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "hobby.game_sudoku_validity",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.

por chamadaUS$ 0,002

Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.

HTTPCódigoO que significa
401unauthorizedToken ausente ou inválido. Confira o header Authorization.
402insufficient_balanceSaldo insuficiente para esta tarefa. Faça uma recarga e tente de novo.
404unknown_typeEsse tipo de tarefa não existe. Confira o campo type no catálogo.
429rate_limitedMuitas requisições em pouco tempo. Espere um instante e tente de novo.

Ver a documentação completa do KIT →