zoukankan      html  css  js  c++  java
  • 程序设计C 实验三 题目九 方程式(0300)

    Description:

    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.

    Input:

    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.

    Output:

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

    Sample Input:

    1 2 3 -4
    1 1 1 1
     
     
    39088
    0
     
     
     
    #include<stdio.h>
    #include<string.h>
    int hash1[1000000] = { 0 }, hash2[1000000] = { 0 };
    int main()
    {
        int a, b, c, d, sum;
        while (scanf("%d%d%d%d", &a, &b, &c, &d) != EOF)
        {
            int i, j, s;
            memset(hash1, 0, sizeof(hash1));
            memset(hash2, 0, sizeof(hash2));
            if ((a>0 && b>0 && c>0 && d>0) || (a<0 && b<0 && c<0 && d<0))
            {
                printf("0\n");
                continue;
            }
            else
            {
                for (i = 1; i <= 100; i++)
                {
                    for (j = 1; j <= 100; j++)
                    {
                        s = a*i*i + b*j*j;
                        if (s >= 0)hash1[s]++;
                        else hash2[-s]++;
                    }
                }
                sum = 0;
                for (i = 1; i <= 100; i++)
                {
                    for (j = 1; j <= 100; j++)
                    {
                        s = c*i*i + d*j*j;
                        if (s>0)sum += hash2[s];
                        else sum += hash1[-s];
                    }
                }
                printf("%d\n", sum * 16);
            }
        }
        return 0;
    }
    View Code
  • 相关阅读:
    jmeter非GUI模式命令
    jmeter性能测试--浪涌测试
    性能测试之场景设计
    性能测试用例实例
    jmeter常见错误及解决方法
    .NET中变量生存期
    SQL数据库从高版本导入低版本
    对称子字符串
    回溯法求解全排列问题(可去除重复排列)
    快速排序及快速选择问题
  • 原文地址:https://www.cnblogs.com/traini13/p/4579257.html
Copyright © 2011-2022 走看看