#include <bits/stdc++.h>
#include <bitset>
using namespace std;
#define int long long
#define dd double
#define ld long double
#define ull unsigned long long
#define yes cout << "YES\n"
#define no cout << "NO\n"
#define el "\n"
#define Arwa ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
#define fix(x) cout << fixed << setprecision(x)
#define all(v) v.begin(),v.end()
#define dpp(arr,val) memset(arr,val,sizeof(arr))
#define mod 1e9+7
const int N = 1e5 + 5;
int numberOfBits(int n) {
int cnt = 0;
while (n > 0) {
cnt++;
n >>= 1; // نقسم على 2 باستخدام الـ bit shift
}
return cnt;
}
// First power of two ≥ n
int powerOf2GreaterThanOrEqual(int n)
{
int indx = 0;
while ((1 << indx) < n)
indx++;
return (1 << indx);
}
int getBit(int n, int indx)
{
return (n >> indx) & 1;
}
int setBit0(int n, int indx)
{
return n & ~(1 << indx);
}
bool isPowerOf2(int n)
{
return n > 0 && (n & (n - 1)) == 0;
}
//todo اى ويل بريبير ماى بيبرز تو بى ذا بيست ان زيس وورلد
void HereWeGoAgain()
{
int n;
cin>>n;
int arr[n];
map<int,int>mp;
for(int i=0;i<n;i++) cin>>arr[i];
int mx=arr[0];
for(int i=1;i<n;i++) mx|=arr[i];
int orr,k;
int mxx=numberOfBits(mx);
for(int i=0;i<n;i++)
{
if(arr[i]!=0)
{
k=i;
for(int j=0;j<=mxx;j++)
{
if(!mp[j]&&getBit(arr[i],j))
mp[j]=getBit(arr[i],j);
}
orr=arr[i];
break;
}
}
int l=k,minlen=n;
int count=0;
//cout<<k<<' '<<orr<<' '<<mx<<el;
for(int i=k+1;i<n;i++)
{
orr|=arr[i];
for(int j=0;j<=mxx;j++)
{
mp[j]+=getBit(arr[i],j);
if(mp[j]>1) count++;
}
for(int j=0;j<=mxx;j++)
{
int c=l;
while(mp[j]>1)
{
if(getBit(arr[c],j))
{
mp[j]--;
arr[c]=setBit0(arr[c],j);
}
c++;
}
}
//for(auto it:arr) cout<<it<<' ';
//cout<<el;
while(arr[l]==0) l++;
if(orr==mx)
{
// cout<<l<<' '<<i<<el;
minlen=min(i-l+1,minlen);
}
}
cout<<minlen;
}
int32_t main()
{
Arwa
int t=1;
//cin>>t;
for(int i=1;i<=t;i++)
{
HereWeGoAgain();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxiaXRzZXQ+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgaW50IGxvbmcgbG9uZwojZGVmaW5lIGRkIGRvdWJsZQojZGVmaW5lIGxkIGxvbmcgZG91YmxlCiNkZWZpbmUgdWxsIHVuc2lnbmVkIGxvbmcgbG9uZwojZGVmaW5lIHllcyBjb3V0IDw8ICJZRVNcbiIKI2RlZmluZSBubyBjb3V0IDw8ICJOT1xuIgojZGVmaW5lIGVsICJcbiIKI2RlZmluZSBBcndhIGlvczo6c3luY193aXRoX3N0ZGlvKDApOyBjaW4udGllKDApOyBjb3V0LnRpZSgwKTsKI2RlZmluZSBmaXgoeCkgY291dCA8PCBmaXhlZCA8PCBzZXRwcmVjaXNpb24oeCkKI2RlZmluZSBhbGwodikgdi5iZWdpbigpLHYuZW5kKCkKI2RlZmluZSBkcHAoYXJyLHZhbCkgbWVtc2V0KGFycix2YWwsc2l6ZW9mKGFycikpCiNkZWZpbmUgbW9kIDFlOSs3CmNvbnN0IGludCBOID0gMWU1ICsgNTsKaW50IG51bWJlck9mQml0cyhpbnQgbikgewogICAgaW50IGNudCA9IDA7CiAgICB3aGlsZSAobiA+IDApIHsKICAgICAgICBjbnQrKzsKICAgICAgICBuID4+PSAxOyAvLyDZhtmC2LPZhSDYudmE2YkgMiDYqNin2LPYqtiu2K/Yp9mFINin2YTZgCBiaXQgc2hpZnQKICAgIH0KICAgIHJldHVybiBjbnQ7Cn0KLy8gIEZpcnN0IHBvd2VyIG9mIHR3byDiiaUgbgppbnQgcG93ZXJPZjJHcmVhdGVyVGhhbk9yRXF1YWwoaW50IG4pCnsKICAgIGludCBpbmR4ID0gMDsKICAgIHdoaWxlICgoMSA8PCBpbmR4KSA8IG4pCiAgICAgICAgaW5keCsrOwogICAgcmV0dXJuICgxIDw8IGluZHgpOwp9CmludCBnZXRCaXQoaW50IG4sIGludCBpbmR4KQp7CiAgICByZXR1cm4gKG4gPj4gaW5keCkgJiAxOwp9CmludCBzZXRCaXQwKGludCBuLCBpbnQgaW5keCkKewogICAgcmV0dXJuIG4gJiB+KDEgPDwgaW5keCk7Cn0KYm9vbCBpc1Bvd2VyT2YyKGludCBuKQp7CiAgICByZXR1cm4gbiA+IDAgJiYgKG4gJiAobiAtIDEpKSA9PSAwOwp9CgovL3RvZG8g2KfZiSDZiNmK2YQg2KjYsdmK2KjZitixINmF2KfZiSDYqNmK2KjYsdiyINiq2Ygg2KjZiSDYsNinINio2YrYs9iqINin2YYg2LLZitizINmI2YjYsdmE2K8Kdm9pZCBIZXJlV2VHb0FnYWluKCkKewogICAgaW50IG47CiAgICBjaW4+Pm47CiAgICBpbnQgYXJyW25dOwogICAgbWFwPGludCxpbnQ+bXA7CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKSBjaW4+PmFycltpXTsKICAgIGludCBteD1hcnJbMF07CiAgICBmb3IoaW50IGk9MTtpPG47aSsrKSBteHw9YXJyW2ldOwogICAgaW50IG9ycixrOwogICAgaW50IG14eD1udW1iZXJPZkJpdHMobXgpOwogICAgZm9yKGludCBpPTA7aTxuO2krKykKICAgIHsKICAgICAgICBpZihhcnJbaV0hPTApCiAgICAgICAgewogICAgICAgICAgICAgaz1pOwogICAgICAgICAgICBmb3IoaW50IGo9MDtqPD1teHg7aisrKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZighbXBbal0mJmdldEJpdChhcnJbaV0saikpCiAgICAgICAgICAgICAgICBtcFtqXT1nZXRCaXQoYXJyW2ldLGopOwogICAgICAgICAgICB9CiAgICAgICAgICAgIG9ycj1hcnJbaV07CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH0KICAgIGludCBsPWssbWlubGVuPW47CiAgICBpbnQgY291bnQ9MDsKICAgIC8vY291dDw8azw8JyAnPDxvcnI8PCcgJzw8bXg8PGVsOwogICAgZm9yKGludCBpPWsrMTtpPG47aSsrKQogICAgewogICAgICAgIG9ycnw9YXJyW2ldOwogICAgICAgIGZvcihpbnQgaj0wO2o8PW14eDtqKyspCiAgICAgICAgewogICAgICAgIG1wW2pdKz1nZXRCaXQoYXJyW2ldLGopOwogICAgICAgIGlmKG1wW2pdPjEpIGNvdW50Kys7CiAgICAgICAgfQogICAgICAgIAogICAgICAgIGZvcihpbnQgaj0wO2o8PW14eDtqKyspCiAgICAgICAgewogICAgICAgICAgIGludCBjPWw7CiAgICAgICAgICAgd2hpbGUobXBbal0+MSkKICAgICAgICAgICB7CiAgICAgICAgICAgICAgIGlmKGdldEJpdChhcnJbY10saikpCiAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgbXBbal0tLTsKICAgICAgICAgICAgICAgYXJyW2NdPXNldEJpdDAoYXJyW2NdLGopOwogICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgIGMrKzsKICAgICAgICAgICB9CiAgICAgICAgfSAKICAgICAgICAvL2ZvcihhdXRvIGl0OmFycikgY291dDw8aXQ8PCcgJzsKICAgICAgICAvL2NvdXQ8PGVsOwogICAgICAgIHdoaWxlKGFycltsXT09MCkgbCsrOyAKICAgICAgICBpZihvcnI9PW14KSAKICAgICAgICB7CiAgICAgICAvLyBjb3V0PDxsPDwnICc8PGk8PGVsOwogICAgICAgIG1pbmxlbj1taW4oaS1sKzEsbWlubGVuKTsKICAgICAgICB9CiAgICAKICAgIH0KICAgY291dDw8bWlubGVuOwp9CmludDMyX3QgbWFpbigpIAp7CiAgIAogICAgQXJ3YQogICAgaW50IHQ9MTsKICAgIC8vY2luPj50OwogICAgZm9yKGludCBpPTE7aTw9dDtpKyspCiAgICB7CiAgICBIZXJlV2VHb0FnYWluKCk7CiAgICB9CiAgICByZXR1cm4gMDsKfQoK