import sys, math sys.setrecursionlimit(10**8) sys.set_int_max_str_digits(0) S = input() N = len(S) bumbo = N*(N + 1)//2 prev = [-1] * 26 bunshi = 0 memo = 0 # マイナス分を積み上げる for i, s in enumerate(S): s = ord(s) - 97 # 全部種類が違ったら sub = (i + 1)*(i + 2)//2 # 今回 s が加わったことで どこの席が X になるか?? if prev[s] != -1: memo += prev[s] + 1 sub -= memo bunshi += sub prev[s] = i print(bunshi/bumbo)