import math n = int(input()) ub = n.bit_length() ans = n for j in range(2, ub + 1): ok = 1 ng = int(math.sqrt(n)) + 1 while abs(ok - ng) > 1: mid = (ok + ng) // 2 v = 1 for _ in range(j): v *= mid if v > n: break if v <= n: ok = mid else: ng = mid k = n - ok ** j ans = min(ans, ok + j + k) print(ans)