//这是70分的
var a:array[1..100000] of longint;
n,sum,j,k,ans,i,min:longint;
begin
fillchar(a,sizeof(a),0);
sum:=0;
ans:=0;
min:=maxint;
readln(n);
i:=1;
while i<>n+1 do
begin
read(a[i]);
inc(sum,a[i]);
if a[i]<min then min:=a[i];
inc(i);
end;
if min>0 then
begin
for i:=1 to n do dec(a[i],min);
dec(sum,n*min);
inc(ans,min);
end;
while sum>0 do
begin
for i:=1 to n do
if a[i]>0 then
begin
j:=i;
break;
end;
for i:=j+1 to n+1 do
if a[i]=0 then
begin
k:=i-1;
break;
end;
for i:=j to k do
begin
dec(sum);
dec(a[i]);
end;
inc(ans);
end;
writeln(ans);
end.