Pagini recente » Cod sursa (job #2534552) | Cod sursa (job #3265959) | Cod sursa (job #636001) | Cod sursa (job #198719) | Cod sursa (job #1500735)
#include<stdio.h>
#include<vector>
#include<stdlib.h>
using namespace std;
int a1,a2,a3,a4,a5;
long long sol;
#define MOD 6007
vector<int>Hash[MOD];
int abs(int x)
{
if(x<0) return -x;
return x;
}
int main()
{
freopen("ecuatii.in","r",stdin);
freopen("ecuatii.out","w",stdout);
scanf("%d%d%d%d%d",&a1,&a2,&a3,&a4,&a5);
for(int i=-50; i<51; i++)
if(i!=0)
for(int j=-50; j<51; j++)
if(j!=0)
for(int k=-50; k<51; k++) if(k!=0)
{
int t=a1*i*i*i+a2*j*j*j+a3*k*k*k;
int key=abs(t%MOD);
Hash[key].push_back(t);
}
for(int i=-50; i<51; i++)
if(i!=0)
for(int j=-50; j<51; j++)
if(j!=0)
{
int t2=a4*i*i*i+a5*j*j*j;
int key=abs(t2%MOD);
for(vector<int>::iterator it=Hash[key].begin(); it!=Hash[key].end(); it++)
{
if(*it==-t2) sol++;
}
}
printf("%lld",sol);
}