zoukankan      html  css  js  c++  java
  • 方程式

    Consider equations having the following form: a*x1*x1 + b*x2*x2 + c*x3*x3 + d*x4*x4 = 0 a, b, c, d are integers from the interval [-50,50] and any of them cannot be 0. It is consider a solution a system ( x1,x2,x3,x4 ) that verifies the equation, xi is an integer from [-100,100] and xi != 0, any i ∈{1,2,3,4}. Determine how many solutions satisfy the given equation.

    输入

    The input consists of several test cases. Each test case consists of a single line containing the 4 coefficients a, b, c, d, separated by one or more blanks.

    输出

    or each test case, output a single line containing the number of the solutions.

    样例输入

    1 2 3 -4
    1 1 1 1
    

    样例输出

    39088
    0
    #include<iostream>
     #include<cstring>
     using namespace std;
     int f1[1000005];
     int f2[1000005];
     int main()
     {
         long long int  a,b,c,d,sum,i,j,k;
         while(cin>>a>>b>>c>>d)
         {
             if(a>0 && b>0 && c>0 && d>0||a<0 && b<0 && c<0 && d<0)
             {
             cout<<0<<endl;
             continue;
             }
             memset(f1,0,sizeof(f1));
             memset(f2,0,sizeof(f2));
             for(i=1;i<=100;i++)
             {    for(j=1;j<=100;j++)
                 {
                    k=a*i*i+b*j*j;
                    if(k>=0) f1[k]++;
                    else f2[-k]++;
                 }
             }
             sum=0;
             for(i=1;i<=100;i++)
             {
                 for(j=1;j<=100;j++)
                 {
                   k=c*i*i+d*j*j;
                   if(k>0) sum+=f2[k];
                   else sum+=f1[-k];
                 }
             }
             sum=sum*16;
             cout<<sum<<endl;
         }
        return 0;
     }
  • 相关阅读:
    【Linux】【Chrome】安装Chrome浏览器的攻略
    ubuntu下安装程序的三种方法
    scala学习笔记
    安装scala
    安装java
    Python学习笔记
    Linux安装python
    软件测试笔记
    Linux安装微信
    PUTTY学习
  • 原文地址:https://www.cnblogs.com/Lazy-Cat/p/9838491.html
Copyright © 2011-2022 走看看