S = input() N = len(S) # 左からi文字目移行の文字数 [i, N] maxSize = [0] * (N + 1) V = set() for i, s in enumerate(S[:: -1], start=2): V.add(s) maxSize[-i] = len(V) ans = 0 for left, s in enumerate(S): V = set() for right, t in enumerate(S[left:], start=left): V.add(t) if len(V) == maxSize[left]: ans += len(V) * (N - right) break ans += len(V) print(ans / (N * (N + 1) // 2))