typedef long long ll; typedef long double ld; #include using namespace std; #define int long long signed main(){ ll n; std::cin >> n; if(n==1){ std::cout << 1 << std::endl; return 0; }else if(n==2){ std::cout << 2 << std::endl; return 0; } ll ans = n-1; for (int j = 1; j <= 59; j++) { ll i = floor(powl(n,(ld)(1.0/(ld)j))+0.00000000000001); // std::cout << i << std::endl; ans = min(ans, i+j+(ll)(n-powl(i,j))); } std::cout << ans << std::endl; }