程序设计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;

}

时间: 2024-10-06 06:56:09

程序设计C 实验三 题目九 方程式(0300)的相关文章

20175325 《JAVA程序设计》实验三《敏捷开发与XP实践》实验报告

20175325 <JAVA程序设计>实验三<敏捷开发与XP实践>实验报告 一.实验报告封面 课程:Java程序设计 班级:1753班 姓名:石淦铭 学号:20175325 成绩: 指导教师:娄嘉鹏 实验日期:2019年5月2日 实验时间:13:45 - 17:25 实验序号:实验三 实验名称:敏捷开发与XP实践 实验内容: 1.XP基础 2.XP核心实践 3.相关工具 二.实验内容及步骤: (一).实验一 1.题目: 实验三 敏捷开发与XP实践 http://www.cnblog

CCNA实验三十九 再临无线现场 &nbsp;

CCNA实验三十九 再临无线现场 环境:Windows XP  . PacketTracert 5.3 目的: 再次加深对无线模块化使用的理解,还有掌握无线局域网中的WEP.WPA.WPA-PSK加密,了解如何使用加密保护无线网络. 步骤: 创建拓扑如下: 1.分别为三台无线设备添加无线网卡: 2.分别为三台路由器添加无线模块: 3.配置AAA服务器: 4.配置R1路由器: Router>en Router#conf t Router(config)#host R1 R1(config)#ip

20182309 2019-2020-1 《数据结构与面向对象程序设计》实验三报告

20182309 2019-2020-1 <数据结构与面向对象程序设计>实验三报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 董其鹏 学号: 20182309 实验教师:王志强 实验日期:2019年9月23日 必修/选修: 必修 1.实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4.完成蓝墨云上 (1)-(5)实验. 2. 实验过程及结果 sout :生成 System.out.println() ps

20182327 2019-2020-1 《数据结构与面向对象程序设计》实验三报告

20182327 2019-2020-1 <数据结构与面向对象程序设计>实验三报告 课程:<程序设计与数据结构> 班级: 1823 姓名:赵天昊 学号:20182327 实验教师:王志强 实验日期:2019年9月22日 必修/选修: 必修 1.实验内容 1.参考 http://www.cnblogs.com/rocedu/p/6371315.html#SECUNITTEST 参考http://www.cnblogs.com/rocedu/p/6736847.html 提交最后三个测

20182326 2019-2020-1 《数据结构与面向对象程序设计》实验三报告

20182326 2019-2020-1 <数据结构与面向对象程序设计>实验三报告 课程:<程序设计与数据结构> 班级: 1823 姓名: 刘颖洁 学号:20182326 实验教师:王志强 实验日期:2019年9月23日 必修/选修: 必修 1.实验内容 下载安装并使用IDEA,完成下面实验(https://www.cnblogs.com/rocedu/p/6371315.html). 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态(自己去学!) 初步掌握UM

201453131《Java程序设计》实验三实验报告

实验三 敏捷开发与XP实践 实验内容 •下载并学会使用git上传代码: •与同学结对,相互下载并更改对方代码,并上传: •实现代码的重载. 实验步骤 下载并用git上传代码: •1.下载并安装好git,在cmd中输入git指令: •2.在命令行下模式下给git配置用户名和邮箱: •3.添加公钥: •4.测试是否联通,并上传代码: 更改对方代码: 队友链接: http://home.cnblogs.com/u/5337my/ 心得体会 java的第三个实验,感觉实验本身和java联系不大,主要是掌

# 20182331 2019-2020-1 《数据结构与面向对象程序设计》实验三报告

课程:<程序设计与数据结构> 班级: 1823 姓名: 高宽让 学号:20182331 实验教师:王志强 实验日期:2019年9月23日 必修/选修: 必修 一.实验内容 下载安装并使用IDEA,完成下面实验(https://www.cnblogs.com/rocedu/p/6371315.html). 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态(自己去学!) 初步掌握UML建模 完成蓝墨云上 (1)-(5)实验. 二. 实验过程及结果 1.因为IDEA是收费软件,所

20145234黄斐《Java程序设计》实验三—敏捷开发与xp实践

1在IDEA中使用工具(Code->Reformate Code)把下面代码重新格式化,再研究一下Code菜单,找出一项让自己感觉最好用的功能.提交截图,加上自己学号水印. public class CodeStandard { public static void main(String [] args){ StringBuffer buffer = new StringBuffer(); buffer.append('S'); buffer.append("tringBuffer&qu

20145239 《Java程序设计》实验三 实验报告

详见我的parter20145224的博客:http://www.cnblogs.com/20145224kevs/p/5428892.html 感想:这次的实验看似容易,但很多点都需要注意,比如开源中国的代码管理权限设置等等,而且下载 伙伴的代码也有clone和pull两种办法,具体可以看自己喜好.之前一直没有调remote地址,每次git都到自己的项目,失败了好几次才意识要remote add伙伴的项目地址. 总之,这次实验花费了不少心血,甚至因为和同学交流时言语不当导致了和同学的一些冲突,