Maximum Number of Events That Can Be Attended LeetCode solution in Java

1
class Solution {
2
public int maxEvents(int[][] events) {
3
Arrays.sort(events, (a, b) -> a[1] == b[1] ? a[0] - b[0] : a[1] - b[1]);
4
// here sorting the array on ths basis of last day because we want to finish the events which
5
// happens first,fist.
6

7
TreeSet<Integer> set = new TreeSet<>();
8
for (int i = 1; i <= 100000; i++) {
9
set.add(i);
10
}
11
// initliasing a tree set to check available days ;
12
// a day can go maximum to 100000;
13
int ans = 0;
14
for (int i = 0; i < events.length; i++) {
15
Integer temp = set.ceiling(events[i][0]);
16
if (temp == null || temp > events[i][1]) continue;
17
else {
18
set.remove(temp);
19
ans += 1;
20
}
21
}
22
return ans;
23
}
24
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0