//
#include <bits/stdc++.h>
using namespace std;

#define fi first
#define se second
#define all(x) x.begin(), x.end()
#define lch (o << 1)
#define rch (o << 1 | 1)

typedef double db;
typedef long long ll;
typedef unsigned int ui;
typedef pair<int, int> pint;
typedef tuple<int, int, int> tint;

const int INF = 0x3f3f3f3f;
const ll INF_LL = 0x3f3f3f3f3f3f3f3f;

ll Pow(ll bas, int t) {
	ll ret = 1;
	while (t) {
		ret = ret * bas;
		t--;
	}
	return ret;
}

int main() {
	ios::sync_with_stdio(0);

	ll x;
	cin >> x;
	ll ans = INF_LL;
	for (int i = 2; i < 40; i++) {
		ll tmp = ceil(pow(x, 1.0 / i));
		ans = min(ans, tmp * i);
	}
	cout << ans << endl;

	return 0;
}