#include using namespace std; #define rep(i,n) for(int i = 0; i < n; i++) using ll = long long; using graph = vector>; const ll mod = 1000000007; const int INF = 1001001001; int main(){ ll n; cin >> n; ll ok = n, ng = 0; while(ok - ng > 1){ ll mid = (ng + ok) / 2; auto f = [&](){ for(int i = 2; i <= 10; i++){ ll tmp = n, cnt = 0; while(tmp){ tmp /= i; cnt++; } if(cnt * i <= mid) return true; else continue; } return false; }; if(f()) ok = mid; else ng = mid; } cout << ok << endl; }