Problemas de partición Algoritmo de fuerza bruta
Estoy tratando de hacer el pseudocódigo para el problema de partición a continuación en fuerza bruta.
un conjunto de enteros X y un entero k (k> 1). Encuentre k subconjuntos de X de modo que los números en cada subconjunto sumen la misma cantidad y no haya dos subconjuntos que tengan un elemento en común, o concluya que no existen tales k subconjuntos. El problema es NP-Complete
Por ejemplo, con X = {2, 5, 4, 9, 1, 7, 6, 8} yk = 3, una posible solución sería: {2, 5, 7}, {4, 9, 1}, {6, 8} porque todos suman 14.
para una búsqueda exhaustiva, sé que normalmente tendríamos que buscar todas las soluciones posibles y ver si el objetivo es similar. Pero como este es un problema de partición, esto podría ser complicado.
El algoritmo fuerza bruta:
Subset= X.sum/K //I had a guess this would make the parition
For int i==1; I <subset; i++ // this would change partition if not found in the first one
If (j=0; I<n; i++)
Sum == s[i]
If sum == target
Display “found”
Else
“not found”