View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Vacuum Sealed Vacuum Sealed is offline
external usenet poster
 
Posts: 259
Default Knapsack Problem

Knapsack solved
int N = 50;Random R = new Random();int Target = R.Next(1,N * N);int[] A =
new int[N];For (int i = 0; i < N; i++) A[i] = R.Next(1,N * N /
2);Console.WriteLine("Target: " + Target.ToString());int CurrentSum =
0;Sum(0,N,ref CurrentSum,A,Target);Console.WriteLine("done");voi d Sum(int
nest, int N, ref int CurrentSum, int[] A,int Target){ if (nest = N)return;
int i; nest++; for (i = 0; i < N; i++) {if (CurrentSum + A[i]
Target)continue; CurrentSum += A[i]; Sum(nest,N,ref
CurrentSum,A,Target);if (CurrentSum == Target) {
Console.WriteLine(nest.ToString() + "," + A[i].ToString());
break; } CurrentSum -= A[i]; } nest--; }