约数定理
接下来暴力枚举一遍
C++ 代码
#include <bits/stdc++.h>
using namespace std;
int primes[] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29};
int sum, minv, n;
inline void dfs(int u, int last, int p, int s)
{
if (s > sum || s == sum && p < minv)
{
sum = s;
minv = p;
}
for (int i = 1; i <= last; i ++ )
{
if ((long long) p * primes[u] > n) break;
p *= primes[u];
dfs(u + 1, i, p, s * (i + 1));
}
}
inline void solve()
{
cin >> n;
dfs(0, 30, 1, 1);
cout << minv << endl;
}
int main()
{
cin.tie(nullptr) -> sync_with_stdio(0);
solve();
return 0;
}