#include"iostream"
#include"algorithm"
#include"vector"
#include"stack"
#include"queue"
#include"map"
#include"cstring"
#include"cstdio"
#include"set"
using namespace std;
int a[1000010];
int main()
{
int m,n,i,j,c,b;
set<int>s;
map<int ,int>p;
scanf("%d",&m);
for(i=0;i<m;i++)
{
scanf("%d",&a[i]);
s.insert(a[i]);
}
n=s.size();i=0;j=0;c=0;b=m;
for(;;)
{
while(j<n&&i<m)
if(p[a[i++]]++==0)j++;
if(j<n)break;
b=min(b,i-c);
if(--p[a[c++]]==0)j--;
}
printf("%d\n",b);
return 0;
}