{
TASK:psort
LANG:pascal
}
var
a,b:array [1..100] of longint;
i,j,n,k,max,m,maxx:longint;
begin
 readln(n);
 for i:=1 to n do begin
  read(a[i]);
  b[i]:=a[i];
 end;
 i:=1;
 maxx:=0;
 repeat
  k:=i;
  m:=a[i];
  max:=1;
  repeat
   j:=k;
   m:=m+1;
   repeat
    if a[j]=m then begin m:=m+1; max:=max+1; k:=j end;
    inc(j);
   until j>n;
  until (m>n) or (k=n);
 if max>maxx then maxx:=max;
 inc(i);
 until i>n;
 writeln(n-maxx);
end.




{ j:=1;
 m:=1;
 max:=0;
 b[1]:=0;
 repeat
  k:=a[j];
  m:=1;
  for i:=j to n do
   if {(b[i]<>0) and} (* a[i]>k then begin inc(m); k:=a[i]; {b[i]:=0} end;
  if m>max then max:=m;
  m:=0;
  inc(j);
 until j>n;
 writeln(n-max);*)
end.