Advertisement
ArinaRaguzina

Untitled

Dec 17th, 2018
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.04 KB | None | 0 0
  1. program queue1;
  2.  
  3.  
  4. var
  5.   tmax, t, n, a, b, tm, i, maxsize, size, a1, ii, q: integer;
  6.   queue: array of integer;
  7. begin
  8.   Assign(input, 'input.txt');
  9.   Assign(output, 'output.txt');
  10.   reset(input);
  11.   rewrite(output);
  12.   Read(tmax, n);
  13.   setlength(queue, n);
  14.   Read(a, b);
  15.   queue[0] := a + b;
  16.   t := 0;
  17.   size := 0;
  18.   for i := 1 to n - 1 do
  19.   begin
  20.     Read(a, b);
  21.     if a >= queue[t] then
  22.     begin
  23.       t += 1;
  24.       if queue[size] <= a then
  25.         queue[size + 1] := a + b
  26.       else
  27.         queue[size + 1] := queue[size] + b;
  28.       size += 1;
  29.       while a >= queue[t] do
  30.       begin
  31.         t += 1;
  32.         q := size - t + 1;
  33.       end;
  34.     end
  35.     else
  36.     begin
  37.       if queue[size] <= a then
  38.         queue[size + 1] := a + b
  39.       else
  40.         queue[size + 1] := queue[size] + b;
  41.       size += 1;
  42.       q := size - t ;
  43.     end;
  44.     if q > maxsize then
  45.       maxsize := q;
  46.   end;
  47.   if queue[size]>tmax then
  48.     write(maxsize,' ',tmax)
  49.   else write(maxsize,' ',queue[size]);
  50.   Close(input);
  51.   Close(output);
  52. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement