最多会给出m(m<1000)次日程表[s,e]的安排操作,判断日程[s,e]能否假如到我的日程(能加入的条件是:[s,e]与别的日程发生重叠次数不超过2次)
class MyCalendarTwo {
public:
map<int, int> m;
MyCalendarTwo() {}
bool book(int s, int e) {
int c=0;
m[s]++, m[e]--;
for (auto& [k,v] : m) {
c+=v;
if (c>=3) {
m[s]--, m[e]++;
return false;
}
}
return true;
}
};