150 principais entrevistasFácil

Soma Combinada

Guia detalhado e implementação de Python para o problema de 'Soma Combinada'.

Declaração do problema

Fácil

Dada uma matriz de candidatos inteiros distintos e um alvo inteiro alvo, retorne uma lista de todas as combinações exclusivas de candidatos onde os números escolhidos somam o alvo. Você pode devolver as combinações em qualquer ordem.

O mesmo número pode ser escolhido entre os candidatos um número ilimitado de vezes. Duas combinações são únicas se a frequência de pelo menos um dos números escolhidos for diferente.

Implemente uma função combinationSum(candidates: list, target: int) -> list.

Restrições
  • 1 <= candidates.length <= 30
  • 2 <= candidates[i] <= 40
  • All elements of candidates are distinct
  • 1 <= target <= 40

Exemplos

Example 1
Input
[2,3,6,7], 7
Output
[[2,2,3],[7]]
Explanation

2 + 2 + 3 = 7 and 7 = 7. These are the only two combinations.

Example 2
Input
[2,3,5], 8
Output
[[2,2,2,2],[2,3,3],[3,5]]
Explanation

2+2+2+2 = 8, 2+3+3 = 8, and 3+5 = 8.

Example 3
Input
[2], 1
Output
[]
Explanation

No combination of 2's can sum to 1.

Need a Hint?
Considere usar estruturas de dados específicas do Backtracking, como conjuntos ou heaps.
Edge Cases to Watch
  • Estruturas de entrada vazias
  • Entradas de elemento único
  • Grandes limites numéricos

Pronto para resolver?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Abrir no Editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Recursos Python recomendados

Expanda seu conhecimento com tutoriais interativos relacionados, folhas de dicas e comparações de código.