Skip to content

Commit 9217ba7

Browse files
Create meeting_rooms.cpp
1 parent cd0a765 commit 9217ba7

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

meeting_rooms.cpp

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
struct meeting {
2+
int start, end, position;
3+
};
4+
5+
6+
bool comparator(struct meeting m1, struct meeting m2) {
7+
if(m1.end < m2.end) return true;
8+
else if(m1.end > m2.end) return false;
9+
else if(m1.position < m2.position) return true;
10+
else return false;
11+
}
12+
13+
14+
int maxMeetings(int start[], int end[], int n) {
15+
// Your code here
16+
struct meeting meetings[n];
17+
for(int i=0; i<n; i++) {
18+
meetings[i].start = start[i], meetings[i].end = end[i], meetings[i].position = i+1;
19+
}
20+
21+
22+
sort(meetings, meetings+n, comparator);
23+
int current_end = meetings[0].end;
24+
int result = 1;
25+
26+
for(int i=1; i<n; i++) {
27+
28+
if(meetings[i].start > current_end) {
29+
current_end = meetings[i].end;
30+
result++;
31+
}
32+
}
33+
34+
return result;
35+
36+
37+
}

0 commit comments

Comments
 (0)