#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include // new ! using namespace std; typedef long long ll; #define FOR(i,a,b) for(ll i=(a);i<(b);++i) #define ALL(v) (v).begin(), (v).end() #define p(s) cout<<(s)<> L; ll L2 = L/4; set > se; ll count = 0; FOR(m, 2, sqrt(L2)+1){ FOR(n, 1, m){ if(gcd(m, n)==1 && (m-n)%2==1){ ll a = m*m - n*n; ll b = 2*m*n; ll c = m*m + n*n; if(a+b+c>L2) continue; ll mi = min(a, b); ll ma = max(a, b); se.insert(make_tuple(mi, ma, c)); } } } p(se.size()); return 0; }