@@ -42,25 +42,30 @@ static void tests() {
42
42
std::vector<int > finish = {2 , 4 , 6 , 7 , 9 , 9 };
43
43
44
44
std::vector<int > ans = getMaxActivities (start, finish, start.size ());
45
- std::vector<int > activities = {0 , 1 , 6 , 4 };
45
+ // activity 0, 1, 3, 4 are selected since their start time is greater than the end time of the previous activity
46
+ std::vector<int > activities = {0 , 1 , 3 , 4 };
46
47
47
48
for (int i = 0 ; i < activities.size (); i++){
48
49
uint64_t activityNumber = ans[i];
49
50
assert (activityNumber == activities[i]);
50
51
}
52
+ std::vector<int > start2 = {10 , 12 , 20 };
53
+ std::vector<int > finish2 = {20 , 25 , 30 };
54
+
55
+ std::vector<int > ans2 = getMaxActivities (start2, finish2, start2.size ());
56
+ // only the first activity is chosen, others dont fulfill the criteria
57
+ std::vector<int > activities2 = {0 };
58
+
59
+ for (int i = 0 ; i < activities2.size (); i++){
60
+ uint64_t activityNumber = ans2[i];
61
+ assert (activityNumber == activities2[i]);
62
+ }
63
+
51
64
}
52
65
53
66
// Driver code
54
67
int main ()
55
68
{
56
- // tests();
57
- std::vector<int > start = {1 , 3 , 0 , 5 , 8 , 5 };
58
- std::vector<int > finish = {2 , 4 , 6 , 7 , 9 , 9 };
59
- // Function call
60
- std::vector<int > ans = getMaxActivities (start, finish, start.size ());
61
- std::cout << " Following activities are selected" << " \n " ;
62
- for (int x: ans) {
63
- std::cout << x <<" , " ;
64
- }
69
+ tests ();
65
70
return 0 ;
66
71
}
0 commit comments