#include #include #include #define llint long long using namespace std; llint n, d; vector vec; int main(void) { cin >> n >> d; for(int i = 1; i <= n; i++){ for(int j = 1; j <= n; j++){ vec.push_back(i*i-j*j); } } sort(vec.begin(), vec.end()); llint ans = 0; for(int i = 1; i <= n; i++){ for(int j = 1; j <= n; j++){ ans += upper_bound(vec.begin(), vec.end(), d-(i*i+j*j)) - lower_bound(vec.begin(), vec.end(), d-(i*i+j*j)); } } cout << ans << endl; return 0; }