#include <bits/stdc++.h>
using namespace std;
const int MAXN = 5100;
int n, G[26][MAXN][26], cnt[26];
string S;
int main() {
  while (cin >> S) {
    n = S.size();
    S = S + S;
    for (int st = (0); st < (int)(n); st++) {
      for (int i = (1); i < (int)(n); i++) {
        G[S[st] - 'a'][i][S[st + i] - 'a']++;
      }
      cnt[S[st] - 'a']++;
    }
    double ans = 0.;
    for (int i = (0); i < (int)(26); i++) {
      int mx = 0;
      for (int j = (1); j < (int)(n); j++) {
        int a = 0;
        for (int k = (0); k < (int)(26); k++)
          if (G[i][j][k] == 1) a++;
        mx = max(mx, a);
      }
      ans += (double)mx / n;
    }
    printf("%.9f\n", ans);
  }
  return 0;
}
