Advertisement
rajeshinternshala

Untitled

Jan 15th, 2024
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1. vector<int> solution(vector<int> memory, vector<vector<int>> query)
  2. {
  3.     vector<int> ans(query.size());
  4.     vector<int> allocate(memory.size(), 0);
  5.     int id = 1;
  6.     for (int i = 0; i < query.size(); i++)
  7.     {
  8.         int x = query[i][0];
  9.         if (x == 0)
  10.         {
  11.             int len = query[i][1];
  12.             bool f = false;
  13.             for (int j = 0; j < memory.size(); j += 8)
  14.             {
  15.                 int ct = 0;
  16.                 for (int k = j; k < memory.size(); k++)
  17.                 {
  18.                     if (memory[k] == 1)
  19.                         break;
  20.                     else
  21.                         ct++;
  22.                     if (ct >= len)
  23.                         break;
  24.                 }
  25.                 if (ct >= len)
  26.                 {
  27.                     ans.push_back(j);
  28.                     for (int k = j; k < len + j; k++)
  29.                     {
  30.                         allocate[k] = id;
  31.                     }
  32.                     id++;
  33.                     f = true;
  34.                     break;
  35.                 }
  36.             }
  37.             if (f == false)
  38.             {
  39.                 ans.push_back(-1);
  40.             }
  41.         }
  42.         else
  43.         {
  44.             int req_id;
  45.             int ct = 0;
  46.             for (int j = 0; j < memory.size(); j++)
  47.             {
  48.                 if (memory[j] == req_id)
  49.                 {
  50.                     memory[j] = 0;
  51.                     ct++;
  52.                 }
  53.             }
  54.             if (ct == 0)
  55.                 ans.push_back(-1);
  56.             else
  57.                 ans.push_back(ct);
  58.         }
  59.     }
  60.     return ans;
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement