#include<bits/stdc++.h>
#define f1(i,n,m) for(int i=n;i<=m;i++)
using namespace std;
int n,m,cnt=0;
signed main(){
cin>>n>>m;
f1(i,1,n){
f1(j,1,m){
double pd=pow(sqrt(i)+sqrt(j),2);
int f=floor(pow(sqrt(i)+sqrt(j),2));
if(pd==f){
cnt++;
}
}
}
cout<<cnt;
return 0;
}

出在精度问题了吗