#include <bits/stdc++.h>
using namespace std;
int best[200];
int last[200];
int ans;
int main(void) {
  ios_base::sync_with_stdio(false);
  memset(last, -1, sizeof last);
  string s;
  cin >> s;
  for (int i = 0; i < s.size(); i++) {
    best[s[i]] = max(best[s[i]], i - last[s[i]]);
    last[s[i]] = i;
  }
  for (int i = 0; i < s.size(); i++) {
    best[s[i]] = max(best[s[i]], (int)s.size() - last[s[i]]);
  }
  ans = 0x3f3f3f3f;
  for (char c = 'a'; c <= 'z'; c++) {
    if (best[c]) ans = min(ans, best[c]);
  }
  if (ans != 0x3f3f3f3f)
    cout << ans << endl;
  else
    cout << s.size() / 2 + 1 << endl;
  return 0;
}
