|
20 | 20 | namespace backtracking {
|
21 | 21 | /**
|
22 | 22 | * @namespace Subsets
|
23 |
| - * @brief Functions for the [Subset |
24 |
| - * Sum](https://en.wikipedia.org/wiki/Subset_sum_problem) problem. |
| 23 | + * @brief Functions for the [Subset Sum](https://en.wikipedia.org/wiki/Subset_sum_problem) problem. |
25 | 24 | */
|
26 | 25 | namespace subset_sum {
|
27 | 26 | /**
|
@@ -59,41 +58,31 @@ static void test() {
|
59 | 58 | // Test 1
|
60 | 59 | std::cout << "1st test ";
|
61 | 60 | std::vector<int> array1 = {-7, -3, -2, 5, 8}; // input array
|
62 |
| - assert(backtracking::subset_sum::subset_sum(0, array1) == |
63 |
| - 2); // first argument in subset_sum function is the required sum and |
64 |
| - // second is the input array |
| 61 | + assert(backtracking::subset_sum::subset_sum(0, array1) == 2); // first argument in subset_sum function is the required sum and second is the input array |
65 | 62 | std::cout << "passed" << std::endl;
|
66 | 63 |
|
67 | 64 | // Test 2
|
68 | 65 | std::cout << "2nd test ";
|
69 | 66 | std::vector<int> array2 = {1, 2, 3, 3};
|
70 |
| - assert(backtracking::subset_sum::subset_sum(6, array2) == |
71 |
| - 3); // here we are expecting 3 subsets which sum up to 6 i.e. |
72 |
| - // {(1,2,3),(1,2,3),(3,3)} |
| 67 | + assert(backtracking::subset_sum::subset_sum(6, array2) == 3); // here we are expecting 3 subsets which sum up to 6 i.e. {(1,2,3),(1,2,3),(3,3)} |
73 | 68 | std::cout << "passed" << std::endl;
|
74 | 69 |
|
75 | 70 | // Test 3
|
76 | 71 | std::cout << "3rd test ";
|
77 | 72 | std::vector<int> array3 = {1, 1, 1, 1};
|
78 |
| - assert(backtracking::subset_sum::subset_sum(1, array3) == |
79 |
| - 4); // here we are expecting 4 subsets which sum up to 1 i.e. |
80 |
| - // {(1),(1),(1),(1)} |
| 73 | + assert(backtracking::subset_sum::subset_sum(1, array3) == 4); // here we are expecting 4 subsets which sum up to 1 i.e. {(1),(1),(1),(1)} |
81 | 74 | std::cout << "passed" << std::endl;
|
82 | 75 |
|
83 | 76 | // Test 4
|
84 | 77 | std::cout << "4th test ";
|
85 | 78 | std::vector<int> array4 = {3, 3, 3, 3};
|
86 |
| - assert(backtracking::subset_sum::subset_sum(6, array4) == |
87 |
| - 6); // here we are expecting 6 subsets which sum up to 6 i.e. |
88 |
| - // {(3,3),(3,3),(3,3),(3,3),(3,3),(3,3)} |
| 79 | + assert(backtracking::subset_sum::subset_sum(6, array4) == 6); // here we are expecting 6 subsets which sum up to 6 i.e. {(3,3),(3,3),(3,3),(3,3),(3,3),(3,3)} |
89 | 80 | std::cout << "passed" << std::endl;
|
90 | 81 |
|
91 | 82 | // Test 5
|
92 | 83 | std::cout << "5th test ";
|
93 | 84 | std::vector<int> array5 = {};
|
94 |
| - assert(backtracking::subset_sum::subset_sum(6, array5) == |
95 |
| - 0); // here we are expecting 0 subsets which sum up to 6 i.e. we |
96 |
| - // cannot select anything from an empty array |
| 85 | + assert(backtracking::subset_sum::subset_sum(6, array5) == 0); // here we are expecting 0 subsets which sum up to 6 i.e. we cannot select anything from an empty array |
97 | 86 | std::cout << "passed" << std::endl;
|
98 | 87 | }
|
99 | 88 |
|
|
0 commit comments