def chmax(a, b): if a < b: a = b return True return False def chmin(a, b): if b < a: a = b return True return False INTINF = 1000001000 INTMAX = 2147483647 LLMAX = 9223372036854775807 LLINF = 1000000000000000000 def main(): N = int(input()) memo = {} memo[1] = 0.0 def solve(n): if n in memo: return memo[n] divsum = 0 d = 2 while d * d <= n: if n % d == 0: divsum += solve(d) if d != n // d: divsum += solve(n // d) d += 1 ret = float(n) / float(n - 1) + divsum / float(n - 1) memo[n] = ret return ret print(f"{solve(N):.10f}") if __name__ == "__main__": main()