-
Notifications
You must be signed in to change notification settings - Fork 44
Open
Labels
Description
En Refugio 33, cada semana recibimos una cierta cantidad de donaciones (en unidades, por ejemplo: alimentos, mantas, botellas de agua). Cada donación está representada como un número entero en una lista.
Dado un número objetivo que representa la cantidad específica de suministros que necesitamos cubrir una necesidad concreta (por ejemplo, para una familia o actividad comunitaria específica), tu misión es ayudarnos a encontrar dos donaciones que, sumadas, alcancen exactamente ese número objetivo.
📥 Entrada
- Una lista de números enteros
donacionesque representa la cantidad de unidades de cada ítem recibido. - Un número entero
objetivoque representa la cantidad exacta de recursos que necesitamos.
std::vector<int>& indicesDonaciones(const std::vector<int>& donations, int target);🎯 Salida
- Devuelve los índices (posiciones) de las dos donaciones que suman exactamente
objetivo.
Puedes asumir que siempre habrá una única solución posible. No se puede usar la misma donación dos veces.
🧪 Ejemplo
donaciones = [3, 7, 11, 15]
objetivo = 18Salida esperada:
[1, 2] # porque donaciones[1] + donaciones[2] == 7 + 11 == 18✅ Reglas
- Cada donación solo puede usarse una vez.
- Puedes devolver los índices en cualquier orden (por ejemplo,
[1, 2]o[2, 1]son válidos).