Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program zadd;
- var
- typeOfOil, a, prev, last : array [1..100000] of Integer ;
- i, n, k, p, cnt :Integer;
- sign : char;
- procedure push(k, x:Integer;);
- begin
- inc(cnt);
- if (last[k] > p) then begin
- WriteLn('ERROR');
- exit;
- end ;
- a[cnt] := x;
- prev[cnt] := last[k];
- last[k] := cnt;
- end;
- procedure pop(k:Integer);
- begin
- if (typeOfOil[last[k]] = typeOfOil[I]) then
- last[k] := prev[last[k]]
- else begin
- writeln('ERROR');
- exit;
- end;
- end;
- {procedure top(k:Integer) ;
- begin
- top := a[last[k]];
- end;}
- begin
- cnt := 0;
- read(n, k, p);
- for i := 1 to n do begin
- read(sign, k, typeOfOil[i]);
- if (sign = '+') then
- push(k, typeOfOil[i])
- else
- pop(k);
- end;
- WriteLn(p);
- //exit;
- //writeln(k,' ',last[k],' ' ,a[last[k]]);
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement