#include <iostream>
#include<algorithm>
#include<string>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
string s;
cin>>s;
int a[256]={0};
int r=-1;
int sum=0;
int len=s.length()+1;
for(int l=0;l<s.length();l++)
{
while((r+1<s.length()&&sum!=26)) //r+1主要是因为在判断边界防止越界,这样r存的就是是右指针;
{
r++;
a[s[r]]++;
if(a[s[r]]==1) sum++;
}
if(sum==26)
{
len=min(len,r-l+1);
}
a[s[l]]--;
if(a[s[l]]==0) sum--;
}
cout<<len;
return 0;
}
#include<algorithm>
#include<string>
using namespace std;
int main()
{
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
string s;
cin>>s;
int a[256]={0};
int r=-1;
int sum=0;
int len=s.length()+1;
for(int l=0;l<s.length();l++)
{
while((r+1<s.length()&&sum!=26)) //r+1主要是因为在判断边界防止越界,这样r存的就是是右指针;
{
r++;
a[s[r]]++;
if(a[s[r]]==1) sum++;
}
if(sum==26)
{
len=min(len,r-l+1);
}
a[s[l]]--;
if(a[s[l]]==0) sum--;
}
cout<<len;
return 0;
}