#include <bits/stdc++.h>
// #include <atcoder/maxflow>
#define int long long
using namespace std;
// using namespace atcoder;
using vec_int = vector<int>;
using ll = long long;
#define rep(i, n) for(int i = 0; i < (int)(n); i++)

void cout_line(vector<int> &a){
    for(int i=0;i<a.size();i++){
        if(i<a.size()-1){
            cout<<a.at(i)<<" ";
        }else{
            cout<<a.at(i)<<endl;
        }
    }
}


signed main()
{
    int N; cin>>N;
    int ans = 0;
    for(int i=1;i<N;i++){
        int y2 = N*N-i*i;
        double y2d = y2;
        if(abs(y2d-((int)sqrt(y2d))*((int)sqrt(y2d)))<0.000001){
            ans++;


        }
    }
    cout<<ans<<endl;

    return 0;
}