23 using Objects = std::vector<std::pair<int, int>>;
24 Objects objects{ { 1, 3 }, { 2, 2 }, { 3, 65 }, { 1, 1 }, { 2, 2 },
25 { 4, 3 }, { 1, 1 }, { 10, 23 } };
26 const int capacity = 6;
27 auto size = [](std::pair<int, int> object) {
return object.first; }
29 auto value = [](std::pair<int, int> object) {
return object.second; }
33 std::cout <<
"Knapsack unbounded FPTAS on size" << std::endl;
35 double epsilon = 1. / 4.;
36 auto maxValue = paal::knapsack_0_1_on_size_fptas(
37 epsilon, objects, capacity, std::back_inserter(result), size, value);
39 std::cout <<
"Max value " << maxValue.first <<
", Total size "
40 << maxValue.second << std::endl;
41 for (
auto o : result) {
42 std::cout <<
"{ size = " << o.first <<
", value = " << o.second <<
"} ";
44 std::cout << std::endl;
int main()
[Knapsack Example]