int main(void)
{
    std::vector<int> v{-1,2,5,0,-3,3,5,56,7,-4,-4};
    std::cout<<"largest sum = "<<solution_1(v)<<std::endl;
    std::vector<int> v1{-1,-2,-5,0};
    std::cout<<"largest sum = "<<solution_1(v1)<<std::endl;

    return 0;
}
Ejemplo n.º 2
0
/*
   return the max value by the equation
*/
int Bag::solution_1(int i, int j) 
{
  if (i >= value.size())  return 0;
  if (j < weigh[i])  return 0;
  else {
    int max1 = solution_1(i+1, j);
    int max2 = solution_1(i+1, j-weigh[i]) + value[i];
    return max1 > max2 ? max1 : max2;
  }
}