ForHosting KIT · Matemática

Combinações com repetição

Conte seleções em que cada tipo pode se repetir e a ordem não importa: 3 escolhas entre 5 tipos dão 35, ou seja, C(7, 3), a mesma contagem de estrelas e barras usada para distribuir itens idênticos. 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úmero de tipos distintos
5
Resistência (Ω)
3
Você obtém
Quantidade
35
N mais r menos 1
7
Máx. de n
500
Máx. de r
500

Esta calculadora de combinações com repetição devolve quantos multiconjuntos distintos de tamanho r você pode formar a partir de n tipos, quando cada tipo pode ser escolhido mais de uma vez, e a ordem não importa. Pequenas verificações que você já deve conhecer incluem cinco tipos e três escolhas, resultando em trinta e cinco, três tipos e duas escolhas, resultando em seis, e qualquer n válido com zero escolhas, resultando em um, para a seleção vazia. O mecanismo usa apenas aritmética binomial determinística com BigInt: sem chamadas de rede, sem amostragem e sem atalhos que dependam de data.

O que significam as combinações com repetição e o que a resposta contém

Combinações com repetição contam seleções não ordenadas, em que o mesmo tipo pode aparecer mais de uma vez. Isso é diferente das combinações comuns C(n, r), que proíbem reutilização, e diferente das permutações, que se importam com a ordem. Formalmente, a contagem é C(n + r − 1, r), para n positivo e r não negativo; de forma equivalente, C(n + r − 1, n − 1).

Estrelas e barras interpretam o mesmo número como o número de maneiras de colocar r itens indistinguíveis em n compartimentos distinguíveis, e é por isso que a ferramenta é útil tanto para combinatória pura quanto para problemas aplicados de contagem, como distribuir unidades idênticas entre categorias.

Esta calculadora devolve os n e r solicitados, a contagem exata como uma string decimal, o índice superior intermediário n mais r menos um, uma pequena string de fórmula, como C(7, 3), e os máximos publicados, para que os clientes validem antes de enviar um lote.

Onde as combinações de multiconjunto se encaixam nos estudos, no código e na modelagem

Estudantes encontram combinações com repetição quando um livro didático as contrasta com combinações comuns, quando um exercício de estrelas e barras pede soluções não negativas para uma equação diofantina linear, ou quando precisam de uma contagem limpa de multiconjuntos de um tamanho fixo. Professores podem pré-gerar gabaritos para n e r modestos, sem confiar em aplicativos de calculadora opacos, que arredondam inteiros grandes, ou trocam silenciosamente para notação científica.

Desenvolvedores chamam o mesmo contrato a partir de scripts para gerar vetores de teste determinísticos, dimensionar modelos de inventário, ou estilo colecionador de cupons, que permitem categorias repetidas, ou atender enunciados de desafios de programação que exigem o valor exato de multiescolha, em vez de uma aproximação em espaço logarítmico. A prática de competições costuma precisar de uma fonte rápida e offline de ordens de combinação de multiconjunto, para que as soluções possam ser conferidas sem baixar tabelas da OEIS sob pressão de tempo.

Analistas de produto e de operações usam a contagem ao estimar quantas cestas de pedido distintas de tamanho r podem surgir, a partir de n SKUs, se a quantidade por SKU for ilimitada, e a ordem de listagem não importar.

Lição de casa e conferência de estrelas e barras

Consulte valores exatos de C(n+r−1, r), para exercícios de livro didático de combinação de multiconjunto, e contagens de soluções inteiras não negativas.

Inventário e dimensionamento de cestas

Conte seleções não ordenadas distintas de r itens, de n tipos, quando a repetição é permitida, para cenários de produto ou de modelagem.

Como a contagem é definida?

O número de maneiras de escolher r itens de n tipos, com repetição permitida e ordem irrelevante, é C(n+r−1, r).

Isso é o mesmo que combinações comuns C(n, r)?

Não. Combinações comuns proíbem repetir um tipo. Esta ferramenta permite repetição (combinações de multiconjunto / multiescolha).

Por que o resultado é uma string, em vez de um número?

Coeficientes binomiais podem exceder os inteiros seguros do JavaScript.

Qual é o máximo de tipos e de escolhas aceito?

São aceitos até 500 tipos e até 500 escolhas. Esse limite mantém cada resultado exato e rápido, mesmo que essas contagens cresçam muito depressa com valores grandes.

Por que o resultado é 1 quando escolho zero itens?

Não escolher nada conta como exatamente uma seleção: a vazia. Qualquer número válido de tipos com zero escolhas retorna 1, seguindo a convenção usual da contagem.

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/combinations-with-repetition

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/combinations-with-repetition \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":5,"r":3}'
{
  "n": 5,
  "r": 3
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "combo.combinations_with_repetition",
  "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_n500
max_r500
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 forma fechada clássica é n mais r menos um escolha r, escrita C(n+r−1, r), também conhecida como multiescolha, combinações de multiconjunto, ou a contagem de estrelas e barras de soluções inteiras não negativas para x_1 + … + x_n = r.

O que significam as combinações com repetição e o que a resposta contém

Não há caminho aproximado em ponto flutuante apresentado como verdade, e nenhuma amostragem aleatória de subconjuntos: o mecanismo constrói o produto binomial exato dentro do intervalo suportado, ou rejeita a entrada com invalid_input. Os casos rejeitados incluem n ou r ausentes, não inteiros, frações, notação científica, valores acima dos tetos documentados, n abaixo de um, e qualquer r negativo. Se você precisar de combinações comuns sem reposição, permutações, ou uma enumeração dos multiconjuntos reais, use essas ferramentas dedicadas; esta página responde apenas à contagem de combinação de multiconjunto, com saída BigInt exata, adequada para listas de exercícios, testes unitários e consumidores de API que não podem perder dígitos além dos inteiros seguros do JavaScript.

Como n e r são lidos e como o BigInt mantém cada dígito exato

Sinais de mais opcionais no início são permitidos; espaços incorporados, prefixos hexadecimais, sinais negativos onde proibidos, e notação exponencial são rejeitados com uma mensagem clara, para que uma célula ruim não vire uma contagem errada. Zero para r é válido, e devolve um, coincidindo com as convenções de produto vazio e seleção vazia usadas em matemática discreta. O cálculo usa a fórmula multiplicativa em BigInt para C(a, b): multiplica fatores sucessivos (a − i) / (i + 1), para i de zero até o menor entre b e a − b, para que os valores intermediários permaneçam exatos, sem construir fatoriais completos, que desperdiçariam tempo e memória. Os campos preferenciais são n para o número de tipos, e r para quantos itens selecionar, mas os apelidos types e kinds para n, e k e count para r também são aceitos, para que planilhas, query strings e formulários tipados possam reaproveitar o mesmo contrato. O mecanismo impõe máximos rígidos de quinhentos, tanto para n quanto para r, o que mantém a memória e a latência dentro de um orçamento previsível, no caminho gratuito do navegador e no Worker de borda, mesmo os coeficientes binomiais crescendo rapidamente. Cada intermediário é um BigInt, e a contagem final é serializada com toString, para que o JSON nunca perca dígitos, como os doubles IEEE perderiam depois do quinquagésimo terceiro bit. Combine a execução gratuita no navegador desta página com a API paga, quando precisar do mesmo resultado matemático dentro de um pipeline automatizado, sem reimplementar sozinho estrelas e barras.

Onde as combinações de multiconjunto se encaixam nos estudos, no código e na modelagem

Nesta página, o trabalho roda inteiramente no seu navegador; pela API, cada consulta bem-sucedida custa US$ 0,002, a validação que falha não é cobrada, e nada fica armazenado depois que a resposta retorna. Essa divisão — exploração interativa gratuita e uma API paga e idêntica — segue o restante do catálogo tier A do KIT, e permite passar de uma demonstração em sala de aula para um pipeline automatizado, sem mudar o resultado matemático. Combine-a com ferramentas de fatorial ou binomiais, quando precisar de coeficientes relacionados, com contadores de permutação, quando a ordem importar, e com outros endpoints de matemática quando estiver montando um pequeno laboratório de auxiliares gratuitos e determinísticos de combinatória.

Fixtures determinísticos de teste

Gere strings decimais reproduzíveis de multiescolha, para testes unitários, verificações de propriedades, e asserções de CI, sem manter tabelas manualmente.

Quanto custa a calculadora de combinações com repetição?

É gratuita no seu navegador, nesta página. Pela API, uma solicitação bem-sucedida custa US$ 0,002; entradas inválidas não são cobradas.

O que acontece se n for menor que 1 ou r for negativo?

Os dois casos são rejeitados com invalid_input. n precisa ser pelo menos 1, e r precisa ser não negativo.

Ver a documentação completa do KIT →