Contagem de partições inteiras
Conte partições não ordenadas de um inteiro de zero a 300 em partes positivas.
def partition_count(number):
if type(number) is not int or not 0 <= number <= 300:
raise ValueError("integer 0 through 300")
ways = [1] + [0]*number
for part in range(1, number+1):
for total in range(part, number+1):
ways[total] += ways[total-part]
return ways[number]Modelos
Configure um endpoint compatível com OpenAI ou Anthropic com a URL base e uma chave API, quando necessária. Teste a conexão. O servidor local precisa estar em execução; ferramentas remotas podem transmitir dados separadamente.
Projeto
Confira a única partição vazia de zero e partes repetidas, rejeitando negativos, frações e booleanos.
Revise antes de aplicar
Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.
def partition_count(number):
if type(number) is not int or not 0 <= number <= 300:
raise ValueError("integer 0 through 300")
ways = [1] + [0]*number
for part in range(1, number+1):
for total in range(part, number+1):
ways[total] += ways[total-part]
return ways[number]Defina o que está sendo contado antes de alterar o código
O Partenum oferece um ambiente de programação com IA para Windows voltado ao desenvolvimento relacionado a contagens, em que o requisito pode permanecer ao lado do código que o implementa. Abra o projeto e explique o que cada resultado representa, se a ordem importa e quais entradas o chamador permite. Peça ao modelo conectado que leia a implementação com essas definições em mente antes de sugerir uma simplificação.
O exemplo de partições de inteiros é uma forma de tornar a revisão concreta. Uma solicitação para contar partições sem considerar a ordem exige uma interpretação diferente de uma solicitação para enumerar disposições ordenadas. Discuta o valor inicial e o resultado para entrada zero como parte dessa distinção. A edição proposta pelo assistente deve seguir a definição usada pela aplicação, em vez de substituí-la por uma recorrência conhecida com outro significado.
Confira casos pequenos de referência no seu próprio ambiente; depois, revise o limite superior suportado e o comportamento para entradas inválidas. Execute os testes pertinentes após examinar a alteração, incluindo o caso que representa uma partição vazia. O Partenum se conecta a endpoints compatíveis com OpenAI ou endpoints Anthropic suportados, com credenciais quando exigidas. Selecione um modelo sem restrições onde estiver disponível e confirme as ferramentas e os limites de contexto do servidor. O fluxo de trabalho busca produzir uma alteração explicável e verificada, usando o problema ilustrativo de contagem como requisito concreto a examinar.
Perguntas para uma alteração na lógica de contagem
Por que especificar se a ordem importa?
Interpretações diferentes podem produzir contagens válidas diferentes para a mesma entrada. Inclua um exemplo pequeno que diferencie a regra pretendida e revise o código proposto em relação a ele, para que uma substituição aparentemente razoável não resolva outro problema.
O que o teste de entrada zero deve estabelecer?
Deve estabelecer o caso base escolhido, incluindo se a partição vazia é contada uma vez. Mantenha essa expectativa explícita no caso de teste e na documentação, pois resultados posteriores podem depender dela mesmo quando as entradas comuns parecem corretas.
Devo enumerar todos os objetos para verificar uma contagem?
Exemplos pequenos explícitos podem ajudar, mas a tarefa ilustrada calcula contagens sem construir cada partição. Use casos de referência de tamanho administrável e examine o significado da implementação. Não adicione alocação de saída apenas porque o assistente propõe outra abordagem de verificação.
Como revisar o intervalo suportado?
Confira os limites de entrada declarados e como o chamador trata valores rejeitados. Mantenha casos negativos, fracionários e booleanos nos testes. Qualquer ampliação além do contrato atual merece uma decisão separada sobre o comportamento esperado da aplicação.
Partenum · Atualizado 2026-10-25