- P51's solution
P51's Solution
- 2025-9-4 21:59:42 @
变形可得 ,枚举 的因数即可。
#include <bits/stdc++.h>
using namespace std;
int main()
{
long long n;
cin >> n;
n ++;
int w = sqrtl(n + 0.1);
bool ok = false;
for (int i = 2; i <= w; i++)
if (n % i == 0)
{
cout << i - 1 << ' ' << n / i - 1 << endl;
ok = true;
}
for (int i = w; i >= 2; i--)
if (n % i == 0 && 1ll * i * i != n)
{
cout << n / i - 1 << ' ' << i - 1 << endl;
ok = true;
}
if (!ok) puts("No");
return 0;
}