{}
run-icon
main.cpp
#include <bits/stdc++.h> using namespace std; #define N 6 // Define structure for Activity struct Activity { int start, finish; }; // Function to compare two activities bool Sort_activity(Activity s1, Activity s2) { return (s1.finish < s2.finish); // Sort by finish time } // Function to print the maximum number of activities void print_Max_Activities(Activity arr[], int n) { // Sort activities based on finish time sort(arr, arr + n, Sort_activity); cout << "Following activities are selected: \n"; int i = 0; cout << "(" << arr[i].start << ", " << arr[i].finish << ")\n"; // Select the next activity that starts after the last selected activity finishes for (int j = 1; j < n; j++) { if (arr[j].start >= arr[i].finish) { cout << "(" << arr[j].start << ", " << arr[j].finish << ")\n"; i = j; } } } int main() { Activity arr[N]; // Taking input from the user for (int i = 0; i < N; i++) { cout << "Enter the start and finish time for job " << i + 1 << " : "; cin >> arr[i].start >> arr[i].finish; } // Function call to print the selected activities print_Max_Activities(arr, N); return 0; }
Output