- 注释: p \small p p指代素数
- 题面
- 题意:见题面。
- 解决思路:由题意知: n = p 1 p 2 \small n= p_1p_2 n=p1p2。
咦!!!
这不就是算术基本定理吗?
所以得出结论, m a x ( p 1 , p 2 ) \small max(p_1,p_2) max(p1,p2)就是所求的答案。
直接枚举小于 n \small \sqrt n n 的因子,输出 n \small n n除以因子就好了。
- AC代码
#pragma GCC optimize(2)
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#define N 1010
#define DoIdo main
#define it set::iterator
typedef long long ll;
typedef unsigned long long ull;
const ll mod = 19260817;
const ll INF = 1e18;
const int maxn = 1e6 + 10;
using namespace std;
ll max(ll a, ll b) { return a > b ? a : b; }
ll min(ll a, ll b) { return a < b ? a : b; }
int DoIdo() {
ios::sync_with_stdio(false);
cin.tie(NULL), cout.tie(NULL);
ll n;
cin >> n;
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
cout << n / i << endl;
return 0;
}
}
return 0;
}