Eqs POJ - 1840

Consider equations having the following form: 
a1x1 3+ a2x2 3+ a3x3 3+ a4x4 3+ a5x5 3=0 
The coefficients are given integers from the interval [-50,50]. 
It is consider a solution a system (x1, x2, x3, x4, x5) that verifies the equation, xi∈[-50,50], xi != 0, any i∈{1,2,3,4,5}. 

Determine how many solutions satisfy the given equation. 
Input
The only line of input contains the 5 coefficients a1, a2, a3, a4, a5, separated by blanks.
Output
The output will contain on the first line the number of the solutions for the given equation.
Sample Input
37 29 41 43 47
Sample Output
654
#include<stdio.h>
#include<math.h>
#include<string.h>
short jie[25000000];
int main()
{
    int a1,a2,a3,a4,a5,i,j,t,k,sum;
    scanf("%d%d%d%d%d",&a1,&a2,&a3,&a4,&a5);
    memset(jie,0,sizeof(jie));
  for(i=-50;i<=50;i++)
    {
        for(j=-50;j<=50;j++)
        {
            if(i!=0&&j!=0)
            {
            t=i*i*i*a1+j*j*j*a2;
            if(t>0)
                jie[t]++;
            else
            {
                t=t+25000000;
                jie[t]++;
            }
            }
        }
    }
    sum=0;
    for(i=-50;i<=50;i++)
    {
        for(j=-50;j<=50;j++)
        {
            for(k=-50;k<=50;k++)
            {
                if(i!=0&&j!=0&&k!=0)
                {
                   t=a3*i*i*i+a4*j*j*j+a5*k*k*k;
                   t=-t;
                   if(t>0&&t<25000000)
                        sum=sum+jie[t];
                   if(t<=0&&t>-25000000)
                    {
                        t=t+25000000;
                          sum=sum+jie[t];
                    }

               }
            }
        }
    }
    printf("%d\n",sum);
    return 0;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章