var
a:array[0..1000]of boolean;
nc:array[1..1000]of longint;
x,m,n,i,j,b,ans,s:longint;
begin
read(m,n);
for i:=1 to n do
begin
read(x);
if (a[x])=false then
begin
inc(ans);
inc(s);
if s>m then
begin
a[nc[1]]:=false;
for j:=2 to m do
nc[j-1]:=nc[j];
nc[m]:=x;
a[x]:=true;
s:=m;
end;
if s<=m then
begin
nc[s]:=x;
a[x]:=true;
end;
end;
end;
write(ans);
end.
a:array[0..1000]of boolean;
nc:array[1..1000]of longint;
x,m,n,i,j,b,ans,s:longint;
begin
read(m,n);
for i:=1 to n do
begin
read(x);
if (a[x])=false then
begin
inc(ans);
inc(s);
if s>m then
begin
a[nc[1]]:=false;
for j:=2 to m do
nc[j-1]:=nc[j];
nc[m]:=x;
a[x]:=true;
s:=m;
end;
if s<=m then
begin
nc[s]:=x;
a[x]:=true;
end;
end;
end;
write(ans);
end.