vivek_ragi

My_Calendar

Jun 11th, 2021 (edited)
233
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. class MyCalendar {
  2. public:
  3.     vector<pair<int,pair<int,int>>> v;
  4.     int cnt = 0;
  5.     MyCalendar() {
  6.         v.clear();
  7.     }
  8.    
  9.     bool book(int start, int end) {
  10.         // checking if the intervals merge or not
  11.        
  12.         //manlo it is right
  13.        
  14.         v.push_back({start,{end,cnt++}});
  15.        
  16.         sort(v.begin(), v.end());
  17.         if(v.size() == 1)
  18.         {
  19.             return true;
  20.         }
  21.        
  22.         for(int i = 1; i < v.size(); ++i)
  23.         {
  24.             if(v[i].first <= (v[i - 1].second.first - 1))
  25.             {
  26.                 if(v[i].second.second > v[i - 1].second.second)
  27.                 v.erase(v.begin() + i);
  28.                 else
  29.                 {
  30.                    v.erase(v.begin() + i - 1);
  31.                 }
  32.                 return false;
  33.             }
  34.         }
  35.        
  36.         return true;
  37.     }
  38. };
  39.  
  40. /**
  41.  * Your MyCalendar object will be instantiated and called as such:
  42.  * MyCalendar* obj = new MyCalendar();
  43.  * bool param_1 = obj->book(start,end);
  44.  */
RAW Paste Data