ForHosting KIT · Matemática

Calculadora de partições inteiras

Conte as formas de escrever um inteiro como soma quando a ordem não importa: 4 se divide em 4, 3+1, 2+2, 2+1+1 e 1+1+1+1, então p(4) vale 5, e 5 tem 7. Grátis no seu navegador.

  • Grátis
  • Funciona no seu navegador
  • Sem cadastro
  • Seus dados não saem do seu aparelho
Use pelo WebAPIE-mailTelegramApp em breve
Se você digitar
N
5
Você obtém
Valor
7
Quantidade
7
Potência (W)
7

A função de partição inteira p(n) responde a uma pergunta clássica de contagem: de quantas maneiras é possível escrever um inteiro não negativo n como soma de inteiros positivos quando a ordem das parcelas não importa? Por exemplo, 4 é igual a 4, 3+1, 2+2, 2+1+1 e 1+1+1+1, de modo que p(4) vale cinco; 5 tem sete partições e 10 tem quarenta e dois. Partições aparecem em teoria dos números, funções geradoras, mecânica estatística e maratonas de programação sempre que se contam somas de multiconjuntos em vez de composições ordenadas ou partições de conjuntos rotulados. Esta capacidade aceita um inteiro não negativo n e devolve o p(n) exato como string decimal calculada com programação dinâmica em BigInt, para que valores bem além dos limites habituais de inteiros seguros permaneçam corretos dígito a dígito. Um n negativo é rejeitado com erro claro de validação em vez de um zero silencioso ou uma resposta errada.

Como a função de partição p(n) é definida

Uma partição inteira irrestrita de um inteiro não negativo n é uma forma de escrever n como soma de inteiros positivos em que a ordem das parcelas é irrelevante. Por convenção p(0) vale um, contando a partição vazia de zero. Valores clássicos de livro-texto são p(1)=1, p(2)=2 (a saber, 2 e 1+1), p(3)=3, p(4)=5, p(5)=7, p(6)=11 e p(10)=42.

A função geradora ordinária da sequência é o produto infinito, sobre k maior ou igual a um, de um sobre um menos x elevado a k, que codifica que cada inteiro positivo pode aparecer qualquer número de vezes como parte. Uma recorrência prática usada em software é o programa dinâmico clássico no estilo do troco de moedas: inicializa-se um array com uma forma de formar a soma zero e, para cada tamanho de parte de um até n, somam-se as formas de completar o restante.

Essa recorrência preenche p(n) de forma exata e nunca conta ordenações em dobro porque as partes são introduzidas em ordem não decrescente de tamanho apenas uma vez.

Objetos relacionados, porém distintos, incluem composições, em que a ordem importa e há dois elevado a n menos um composições de n; partições de conjuntos contadas por números de Stirling de segunda espécie ou números de Bell, que particionam elementos rotulados em vez de somar inteiros positivos sem rótulo; e partições restritas que exigem partes distintas, apenas partes ímpares ou um número fixo de partes.

Esta implementação nunca usa aproximação em ponto flutuante, amostragem Monte Carlo nem tabelas externas: preenche um array unidimensional de BigInt para que cada dígito seja correto. O caminho é plenamente determinístico —sem sementes aleatórias, sem relógios, sem rede e sem deriva de modelo—, de modo que o mesmo n sempre produz a mesma string.

Onde partições inteiras aparecem no trabalho real

Cursos de teoria dos números e maratonas de programação perguntam constantemente quantas partições irrestritas um dado n tem, como p(n) cresce ou se uma tabela de valores pequenos coincide com as congruências de Ramanujan e outras identidades clássicas. Projetistas de algoritmos usam contagens de partições ao analisar espaços de estado no estilo mochila inteira, ao contar decomposições em multiconjuntos de um orçamento de recursos ou ao dimensionar tabelas de DP cujas dimensões acompanham tamanhos de parte.

Contextos de física e combinatória ligam p(n) a funções de partição bosônicas e coeficientes de funções geradoras; educadores costumam mostrar uma lista curta de partições de um n pequeno e depois pedir apenas a contagem. Preparação para entrevistas e treino olímpico frequentemente precisam de um p(n) confiável sem manter à mão tabelas grandes nem arriscar contagens de composições com erro de um.

Se mais tarde você precisar de composições em que a ordem importa, partições de conjuntos via números de Stirling de segunda espécie, apenas números de Bell, partições restritas com partes distintas ou só ímpares, ou um listagem explícita de cada partição em vez da contagem, trate-os como intenções de busca separadas em vez de sobrecarregar esta página.

Mantenha n dentro do limite documentado para que a latência do nível gratuito permaneça previsível, e prefira consumidores de string para o valor devolvido porque p(n) deixa a faixa de inteiros seguros muito antes de cinco mil.

Dever de casa e maratonas de teoria dos números

Calcule p(n) exato para problemas olímpicos, exercícios de matemática discreta e gabaritos automatizados que pedem partições inteiras irrestritas.

Checagens de valores de livro-texto

Verifique valores clássicos como p(5)=7 e p(10)=42 ao ensinar funções geradoras ou ao montar demonstrações de partições.

O que é a função de partição inteira p(n)?

p(n) conta as formas de escrever n como soma de inteiros positivos quando a ordem não importa. Por exemplo p(4)=5 e p(5)=7.

Em que isso difere de composições?

Composições contam somas ordenadas (assim 1+3 e 3+1 são diferentes). Partições ignoram a ordem, de modo que essas duas são a mesma partição de 4.

O que acontece se n for negativo?

Esta calculadora exige n ≥ 0; n negativo é rejeitado e não é cobrado.

Por que o valor é uma string em vez de um Number?

Números de partição ultrapassam com rapidez os inteiros seguros do JavaScript. Strings decimais mantêm cada dígito exato para p(n) grandes.

Quanto custa?

A ferramenta do navegador é gratuita e roda localmente.

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/combo/partition-count

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/combo/partition-count \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":5}'
{
  "n": 5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "combo.partition_count",
  "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.

min_n0
max_n5000
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.

A ferramenta gratuita do navegador e a API paga compartilham uma mesma função pura, de forma que demonstrações em sala e pipelines automatizados nunca divergem para o mesmo n.

Como a função de partição p(n) é definida

Os limites declarados mantêm n entre zero e cinco mil inclusive, o que conserva latência de pior caso adequada a uma ferramenta gratuita no navegador e a um caminho leve de Worker, cobrindo ao mesmo tempo necessidades de maratona, sala de aula e pipelines para contagens exatas de partições.

O que você envia e o que recebe de volta

O inteiro n deve estar entre zero e cinco mil inclusive. As mensagens de erro nomeiam o campo ofensor e a regra que falhou para que clientes de formulário e scripts corrijam a entrada sem adivinhar. Em caso de sucesso a resposta sempre inclui o n normalizado, value e count e p como a mesma string decimal exata de p(n), e uma string curta de fórmula como p(5) para exibição. Informe um inteiro n obrigatório no campo n (aliases number, value ou N). Campos ausentes, não inteiros, decimais e qualquer n negativo são rejeitados com invalid_input e não são cobrados. Verificações de exemplo: n igual a cinco produz count sete; n igual a dez produz count quarenta e dois; n igual a zero produz count um; n igual a quatro produz count cinco; n igual a um produz count um; n igual a menos três produz invalid_input porque a função de partição não está definida para argumentos negativos nesta regra de produto; n igual a um decimal ou a uma string não numérica também produz invalid_input. O contrato é JSON estável adequado a testes unitários, demonstrações em sala e pipelines em lote. O preço das chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item; falhas de validação não consomem saldo pré-pago.

Onde partições inteiras aparecem no trabalho real

Como esta capacidade é um motor de parse puro, o preço da API é a base publicada de US$ 0,002 por item bem-sucedido e a validação falha não consome saldo.

Análise de DP e mochila

Dimensione espaços de estado de decomposição em multiconjuntos e valide fixtures de contagem de partições em pipelines de DP inteira sem tabelas em ponto flutuante.

Ver a documentação completa do KIT →