Pagini recente » Cod sursa (job #159680) | Cod sursa (job #248659) | Cod sursa (job #352677) | Cod sursa (job #564698) | Cod sursa (job #282176)
Cod sursa(job #282176)
program operatii;
var v:array[1..3000] of longint;
mini,i,pozmax,n,op,min,pozmin:longint;
procedure gasire;
begin
pozmin:=mini;
while pozmin<n do
if v[pozmin]<>0 then break
else inc(pozmin);
pozmax:=pozmin;
while pozmax<n do
if v[pozmax]=0 then begin
dec(pozmax);
break;
end
else inc(pozmax);
end;
procedure minim;
begin
min:=maxlongint;
for i:=pozmin to pozmax do
if v[i]<min then min:=v[i];
end;
begin
assign(input,'operatii.in');
reset(input);
read(input,n);
for i:=1 to n do read(input,v[i]);
mini:=1;
op:=0;
repeat
gasire;
mini:=pozmin;
minim;
for i:=pozmin to pozmax do v[i]:=v[i]-min;
inc(op)
until mini=n;
assign(output,'operatii.out');
rewrite(output);
write(output,op);
close(output);
end.