#include<bits/stdc++.h>
#define ll long long
using namespace std;
int main(){
ios::sync_with_stdio(0); cin.tie(0);
int n;
cin >> n;
int MAXN = n * n;
vector<int> v(MAXN + 1, 0);
for(int a = 1; a <= n; a++){
for(int b = a; b <= n; b++){
int s = a * a + b * b;
if(s > MAXN) break;
v[s]++;
}
}
ll wynik = 0;
for(int m = 1; m <= n; m++){
int N = m * m;
for(int h = 1; h < m; h++){
int s = N - h * h;
if(s >= 1 and s <= MAXN) wynik += v[s];
}
}
cout << wynik;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | #include<bits/stdc++.h> #define ll long long using namespace std; int main(){ ios::sync_with_stdio(0); cin.tie(0); int n; cin >> n; int MAXN = n * n; vector<int> v(MAXN + 1, 0); for(int a = 1; a <= n; a++){ for(int b = a; b <= n; b++){ int s = a * a + b * b; if(s > MAXN) break; v[s]++; } } ll wynik = 0; for(int m = 1; m <= n; m++){ int N = m * m; for(int h = 1; h < m; h++){ int s = N - h * h; if(s >= 1 and s <= MAXN) wynik += v[s]; } } cout << wynik; } |
English