File tree Expand file tree Collapse file tree 1 file changed +15
-15
lines changed Expand file tree Collapse file tree 1 file changed +15
-15
lines changed Original file line number Diff line number Diff line change 1
1
class MyCalendar {
2
- TreeMap <Integer , Integer > map ;
3
-
4
- public MyCalendar () {
5
- map = new TreeMap <>();
6
- }
7
-
8
- public boolean book (int start , int end ) {
9
- Map .Entry <Integer , Integer > entry = map .lowerEntry (end );
10
- if (entry != null && entry .getValue () > start ) {
11
- return false ;
12
- }
13
-
14
- map .put (start , end );
15
- return true ;
2
+
3
+ TreeMap <Integer , Integer > events ;
4
+
5
+ public MyCalendar () {
6
+ events = new TreeMap <>();
7
+ }
8
+
9
+ public boolean book (int start , int end ) {
10
+ Integer lower = events .floorKey (start );
11
+ Integer upper = events .ceilingKey (start );
12
+ if ((lower == null || events .get (lower ) <= start ) && (upper == null || end <= upper )) {
13
+ events .put (start , end );
14
+ return true ;
16
15
}
16
+ return false ;
17
+ }
17
18
}
18
-
19
19
/**
20
20
* Your MyCalendar object will be instantiated and called as such:
21
21
* MyCalendar obj = new MyCalendar();
You can’t perform that action at this time.
0 commit comments