暴力判断一下就行了,,,
#include <bits/stdc++.h>
using namespace std;
#define ls st<<1
#define rs st<<1|1
#define LL long long
const int MAXN= (int) 26;
int arr[MAXN];
bool check(char ch) {
return ch>='A'&&ch<='Z';
}
int main() {
ios::sync_with_stdio(false);
int n;
cin >> n;
bool flag = false;
for (int i = 0; i <= (int)sqrt(n/2); ++i) {
int x = n-i*i;
if((int)sqrt(x)*(int)sqrt(x) == x) {
cout << i << " " << (int)sqrt(x) << endl;
flag = true;
}
}
if (!flag)
cout << "No Solution\n";
return 0;
}
本文介绍了一种通过暴力判断的方法来寻找特定整数方程的整数解。该算法适用于寻找形如n=i^2+x^2的整数解,其中i和x均为整数。通过逐步检查可能的解,程序能够有效地找出满足条件的整数对(i, x)。如果存在解,则会输出这些解;若不存在,则输出没有解的信息。
3万+

被折叠的 条评论
为什么被折叠?



