#include <bits/stdc++.h>
using namespace std;
#define int long long
unordered_map <int, int> mp;
int32_t main(){
int n, m, i, j, a, b, w=0;
cin >> n;
for(a=1; a<=n; a++){
for(b=a; b<=n; b++){
mp[a*a+b*b]++;
}
}
for(a=1; a<=n; a++){
for(b=a; b<=n; b++){
w+=mp[b*b-a*a];
}
}
cout << w << '\n';
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | #include <bits/stdc++.h> using namespace std; #define int long long unordered_map <int, int> mp; int32_t main(){ int n, m, i, j, a, b, w=0; cin >> n; for(a=1; a<=n; a++){ for(b=a; b<=n; b++){ mp[a*a+b*b]++; } } for(a=1; a<=n; a++){ for(b=a; b<=n; b++){ w+=mp[b*b-a*a]; } } cout << w << '\n'; return 0; } |
English