#include <iostream>
#include <cstdio>
#include <cstring>
#include <queue>
#include <algorithm>
#include <cmath>
using namespace std;
short hash[25000001];
int main()
{
long long ans;
int a,b,c,d,e;
while(~scanf("%d%d%d%d%d",&a,&b,&c,&d,&e))
{
memset(hash,0,sizeof(hash));
ans=0;
for(int x1=-50;x1<=50;x1++)
{
for(int x2=-50;x2<=50;x2++)
{
if(x1!=0&&x2!=0)
{
int sum=0;
sum+=a*x1*x1*x1;
sum+=b*x2*x2*x2;
if(sum<0)
{
sum+=25000000;
}
hash[sum]++;
}
}
}
for(int x3=-50;x3<=50;x3++)
{
for(int x4=-50;x4<=50;x4++)
{
for(int x5=-50;x5<=50;x5++)
{
if(x3!=0&&x4!=0&&x5!=0)
{
int sum=0;
sum+=c*x3*x3*x3;
sum+=d*x4*x4*x4;
sum+=e*x5*x5*x5;
if(sum<0)
{
sum+=25000000;
}
if(hash[sum])
{
ans+=hash[sum];
}
}
}
}
}
cout<<ans<<endl;
}
return 0;
}
HASH入门 POJ1840
最新推荐文章于 2019-08-05 19:48:33 发布