ForHosting KIT · Ferramentas para dev

Verificador de número vampiro

Um número vampiro é um inteiro composto cujos dígitos podem ser reorganizados em dois fatores de mesmo tamanho, chamados presas.

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

Este verificador aplica a definição completa, em vez de procurar apenas um par de fatores conveniente. Informe um inteiro positivo com quantidade par de dígitos para saber se ele é vampiro e obter todos os pares válidos. Entradas com quantidade ímpar de dígitos geram erro, pois duas presas de mesmo tamanho são impossíveis pela própria definição.

O que o teste de número vampiro comprova

Um resultado positivo comprova mais do que uma fatoração comum. Para um inteiro com 2k dígitos, cada presa precisa ter exatamente k dígitos, as duas presas devem produzir o inteiro original quando multiplicadas e seus dígitos decimais combinados devem coincidir com os originais, inclusive nas repetições. Assim, dois zeros no número exigem dois zeros entre as presas, enquanto um dígito ausente não pode aparecer em nenhum fator. A restrição tradicional sobre zeros finais também é aplicada: o par é rejeitado quando ambas as presas terminam em zero. O verificador avalia todas essas condições em conjunto e devolve cada par distinto em ordem crescente. Por exemplo, 1260 se qualifica porque 21 multiplicado por 60 resulta em 1260 e os dígitos reunidos de 21 e 60 são exatamente 1, 2, 6 e 0. Um resultado negativo significa apenas que nenhum par de fatores com o tamanho exigido satisfaz a regra completa dos dígitos; ele não indica que o número seja primo ou não tenha fatores.

Como informar o número e interpretar o resultado

Envie n como uma string que represente um inteiro decimal sem sinal. A string preserva e permite contar os dígitos exatamente, sem notação científica nem arredondamento numérico silencioso. Não use espaços, vírgulas, pontos decimais, sinal de mais ou zeros à esquerda. A entrada deve ter uma quantidade par de dígitos e no máximo doze, mantendo a busca exata limitada tanto no navegador quanto na API. O resultado repete n, informa digit_count, define is_vampire como true ou false e apresenta fangs como uma lista de pares numéricos. Uma lista fangs vazia é uma resposta negativa completa dentro da definição declarada. Quando há várias decomposições válidas, cada par aparece uma única vez, com a menor presa primeiro. Uma quantidade ímpar de dígitos retorna erro de entrada, e não false: números desse tipo ficam fora do domínio prometido porque não é possível dividir uma quantidade ímpar em duas presas decimais de mesmo tamanho. Essa diferença permite que integrações separem perguntas inválidas de resultados negativos válidos.

Por que a verificação exaustiva dos fatores importa

É fácil verificar incorretamente um desafio de números vampiro à mão. Encontrar fatores com dígitos aparentemente parecidos não basta, e testar somente um par conhecido pode deixar de revelar outra decomposição válida. Esta implementação percorre as possíveis primeiras presas desde o menor inteiro permitido com k dígitos até a raiz quadrada de n. Um candidato só é considerado quando divide n exatamente; em seguida, o fator complementar também precisa ter k dígitos. Por fim, o algoritmo compara assinaturas de dígitos ordenadas e aplica a exclusão dos dois zeros finais. Restringir a primeira presa à raiz quadrada evita duplicatas invertidas sem mudar a resposta. O procedimento é determinístico: entradas iguais sempre produzem os mesmos pares na mesma ordem, sem rede, valor aleatório, relógio ou estado armazenado. Isso torna o verificador útil para teoria dos números recreativa, aulas, correção de exercícios de programação e fluxos de dados repetíveis. A execução no navegador é gratuita, enquanto uma chamada automatizada de API custa US$ 0,002. O mesmo código puro atende aos dois canais, garantindo regras idênticas.

Conferir um desafio de teoria dos números

Verifique uma proposta de número vampiro e mostre os pares exatos de presas que atendem a toda a definição.

Validar sequências geradas

Teste inteiros candidatos em um script e diferencie não vampiros válidos de entradas fora do domínio de dígitos pares.

Ensinar fatores e multiconjuntos

Demonstre como multiplicação, tamanho dos fatores, dígitos repetidos e regras de zeros finais interagem no mesmo problema.

O que é um número vampiro?

É um inteiro com quantidade par de dígitos que pode ser fatorado em duas presas de mesmo tamanho, cujos dígitos combinados reproduzem exatamente os do inteiro, sem ambas terminarem em zero.

Por que uma quantidade ímpar de dígitos gera erro?

A definição exige duas presas de mesmo tamanho. Uma quantidade ímpar de dígitos não pode ser dividida igualmente entre elas, portanto a entrada fica fora do domínio.

Um número pode ter mais de um par de presas?

Sim. O verificador pesquisa todo o intervalo permitido e devolve cada par válido uma vez, ordenado pela menor presa.

Zeros à esquerda são permitidos no número ou nas presas?

Não. A entrada deve usar sua representação decimal comum, e os limites numéricos de tamanho impedem presas com zeros à esquerda.

Quanto custa uma verificação pela API?

Cada chamada de API custa US$ 0,002. Você também pode executar gratuitamente no navegador o mesmo verificador determinístico.

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/numth/vampire-number

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/numth/vampire-number \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":"1260"}'
{
  "n": "1260"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.vampire_number",
  "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.

max_digits12
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 →