Pagini recente » Cod sursa (job #2517664) | Cod sursa (job #1035931) | Cod sursa (job #2956685) | Cod sursa (job #1873498) | Cod sursa (job #1245614)
#include<cstdio>
using namespace std;
int n,m,nr,delta,radical[160005];
long long sol;
int main()
{
int i,h,w,a;
freopen("dreptunghiuri.in","r",stdin);
freopen("dreptunghiuri.out","w",stdout);
scanf("%d%d",&n,&m);
for (i=1;i<=400;++i)
radical[i*i]=i;
for (h=1;h<n;++h)
for (w=1;w<m;++w)
{
nr=0;
for (a=0;a<h;++a)
{
delta=w*w-4*a*(h-a);
if (delta<0) continue;
if (!delta)
{
if (!(w&1)) ++nr;
continue;
}
if (!radical[delta]) continue;
delta=radical[delta];
if (w>=delta && (w+delta)%2==0)
++nr;
if (delta<w && (w+delta)%2==0)
++nr;
}
sol+=1LL*nr*(n-h)*(m-w);
}
printf("%d\n",sol);
return 0;
}