Entrevista a los 150 mejoresfácil

Suma combinada

Guía detallada e implementación de Python para el problema de 'Suma combinada'.

Declaración del problema

fácil

Dada una serie de candidatos de números enteros distintos y un objetivo de entero objetivo, devuelva una lista de todas las combinaciones únicas de candidatos donde los números elegidos suman el objetivo. Puedes devolver las combinaciones en cualquier orden.

El mismo número de candidatos podrá ser elegido un número ilimitado de veces. Dos combinaciones son únicas si la frecuencia de al menos uno de los números elegidos es diferente.

Implementar una función combinationSum(candidates: list, target: int) -> list.

Restricciones
  • 1 <= candidates.length <= 30
  • 2 <= candidates[i] <= 40
  • All elements of candidates are distinct
  • 1 <= target <= 40

Ejemplos

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 la posibilidad de utilizar estructuras de datos específicas de Backtracking, como conjuntos o montones.
Edge Cases to Watch
  • Estructuras de entrada vacías
  • Entradas de un solo elemento
  • Grandes límites numéricos

¿Listo para resolver?

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

Abrir en el 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 recomendados de Python

Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.