Hola estimados Necesito su ayuda urgente! en la u tengo que hacer un algoritmo recursivo que calcula las combinaciones de varios números para que sumen otro número.... La entrada (input) es solo una línea con varios números, separados por un espacio de la forma A B 1 2 3 4 5 siendo A: (el total de la suma a buscar) de las combinaciones de números después de B. B: la cantidad de números que vienen a continuación. ejemplo: A=5 ; B=7 input: 5 7 1 1 2 3 3 5 7 output: debería tirarme 5 1+1+3 2+3 La idea es buscar las combinaciones entre los n números que sumen t . se deben imprimir los números encontrados separados entre ellos por un signo más (´+´). Cada combinación debe ir en una línea. no importa que se repitan las combinaciones ni el orden. Sí importa, como la lista será ingresada siempre en orden creciente de los números, las combinaciones sean en orden creciente también. Además, si no existe ninguna combinación, se debe imprimir no hay combinaciones. he estado hartos dias craneando , como lo puedo hacer pero estoy quedando corto de ídeas de antemano muchas gracias cualquier ayuda es bien recibida!
ni me acuerdo de programar en C xD, pero te doy la idea base segun te entendi los numeros entrarian algo asi {1 2 3 4 5 6 7 8 5 6 1 52 5} (separados por un espacio) numeros = {1 2 3 4 5 6 7 8 5 6 1 52 5} //aqui tenemos nuestros numeros que se ingresaron x = 0; // x es nuestra variable temporal foreach(explode(' ', numeros) as num){ //explode (funcion de php, tendras que buscar su equivalente en C++) convierte en array la variable que pasas en base al separador que indicas, en este caso espacio x=x+num //aqui sumamos los numeros 1 y otra vez hasta terminar, num es el numero del array que se recorre en el momento, en la primera vuelta es 1, en la segunda 2, en la tercera 3, etc y se suma a x que tiene el resultado de las sumas anteriores, cuando termina el foreach ya tienes todo sumado }