Terminado

Encontrar todas las combinaciones de K numeros en una lista de N numeros que sumadas den un total

Publicado el 28 Enero, 2019 en Programación y Tecnología

Sobre este proyecto

Abierto

Encontrar la mejor optimizacion para que un programa en C# (preferencia no aplicacion de consola)
escriba en un archivo de texto el resutado para el siguiente problema:
Tenemos una lista de numeros decimales  con N cantidades (Input se jala de una columna en Excel).
Sabemos el numero de combinaciones que buscamos (K).
Sabemos la suma total (T) que debera resultar de la suma de los K numeros.


El resultado debera ser imprimir en un archivo txt o excel todas las combinaciones posibles de K numeros que sumadas den como resultado T. Ademas los resultados no deben ser duplicados.
------------------------------------------------------
Ejemplo:
Lista N: {1,2,3,4,1,2}
Total suma T: 6
Numero de combinaciones K: 2
----------------------------------------------------------
Resultado con duplicados
1: Sum(2,4) = 6
2: Sum(4,2) = 6
______________________-_____________
resultado del programa:
solo: 2+4 porque es lo mismo que 4+2

nota: necesito un codigo optimizado porque la lista de numeros pude variar y ser muy grande

datos para prueba:
lista n:  { 600.00,600.00,600.00,541.69,528.44,522.50,500.00,500.00,500.00,500.00,500.00,500.00,500.00,500.00,423.53,420.21,420.00,407.00,400.19,300.00,273.95,269.00,268.13,259.46,251.80,250.00,250.00,250.00,250.00,250.00,250.00,250.00,247.30,246.70,215.00,205.00,175.00,175.00,166.25,161.50,159.87,130.00,120.00,109.25,100.65,100.00,100.00,100.00,95.00,90.00,90.00,90.00,90.00,90.00,87.50,83.84,75.00,70.00,60.00,55.40,55.00,50.00,43.00,30.00,25.00,24.60,18.18,17.00,15.00,13.36,7.25,6.00};
           
           
Total T:  615.8
4;

Combinaciones K: 5

Categoría Programación y Tecnología
Subcategoría Aplicaciones de escritorio
¿Cuál es el alcance del proyecto? Cambio mediano
¿Es un proyecto o una posición? Un proyecto
Actualmente tengo Tengo las especificaciones
Disponibilidad requerida Según se necesite
Plataformas requeridas Windows

Plazo de Entrega: 04 Febrero, 2019

Habilidades necesarias