关闭

山东第八届acm大赛F题quadratic equation,山东理工oj 3898

标签: acm第八届算法数学编程离散数学蕴含式
455人阅读 评论(1) 收藏 举报
分类:

题目地址:http://www.sdutacm.org/onlinejudge2/index.php/Home/Index/problemdetail/pid/3898.html

quadratic equation

Time Limit: 2000MS Memory Limit: 131072KB

Problem Description

With given integers a,b,c, you are asked to judge whether the following statement is true: "For any x, if a+bx+c=0, then x is an integer."

Input

The first line contains only one integer T(1≤T≤2000), which indicates the number of test cases.
For each test case, there is only one line containing three integers a,b,c(−5≤a,b,c≤5).

Output

or each test case, output “YES” if the statement is true, or “NO” if not.

Example Input

3
1 4 4
0 0 1
1 3 1

Example Output

YES
YES
NO

心得:

这题在赛场上费尽心机也没A掉,后悔不已。不禁痛恨,算不算大坑,其实是自己离散数学没学好



今天重见此题,终于解心头之恨

分析:

这是一个离散数学中的蕴含命题。对于任意的x,前提是方程有解x ,结果是所有的x都是整数。


只有当前提成立,但结果不成立的时候,这个命题才是假NO。其余情况全部为真YES


知道了这句话,还怕A不掉这题吗?关键是笨脑子想不到这是个离散数学里的蕴含式


代码:

#include<stdio.h>
#include<math.h>
int main()
{
	int a,b,c;
	int n;
	scanf("%d",&n);
	while(n--)
	{
		scanf("%d%d%d",&a,&b,&c);
		int flag;
		int d=b*b-4*a*c;
		if(a==0)
		{
			if(b==0)
			{
				if(c==0)
					flag=0;
				else
					flag=1;
			}
			else if(c%b==0)
				flag=1;
			else
				flag=0;
		}
		else if(d<0)
			flag=1;
		else if(d==0)
		{
			if(b%(2*a)==0)
				flag=1;
			else
				flag=0;
		}
		else 
		{
			if((int)sqrt(d)==sqrt(d))
			{
				if((-b+(int)sqrt(d))%(2*a)==0&&(-b-(int)sqrt(d))%(2*a)==0)
					flag=1;
				else
					flag=0;
			}
			else
				flag=0;
		}
		if(flag)
			puts("YES");
		else 
			puts("NO");
	}
	return 0;
}





1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

众数问题(山东理工OJ)

题目描述 给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如,S={1,2,2,2,3,5}。多重集S的众数是2,其重数为3。对于给定的由n 个自然数组成的多重集S,计算S的众数及其重数。 输入 输入数据的第1行是多重集S中元素个数n(n ...
  • u013962600
  • u013962600
  • 2014-04-23 00:50
  • 1682

山东理工acm 3926 bLue的二叉树

Problem Description Keke 是一个喜爱种树的人,他对各种树都有很深的研究。 MLE 听说 bLue 种了一些新品种的树,就想邀请 Keke 去围观一下。 PBH 在暗中把这一切尽收眼底,作为资深植树行家,他虽不屑,但也决定和他们一起去看一看。 于是,大家便一起到了 bLue ...
  • Leon_liuqinburen
  • Leon_liuqinburen
  • 2017-06-07 11:22
  • 181

山东理工oj 1831答案

A    Problem Description Your task is to Calculate a + b. Input Your task is to Calculate a + b. Output For each pair of input integers ...
  • a_madara
  • a_madara
  • 2016-10-21 17:23
  • 3614

2017-山东省第八届ACM省赛

从第一次的懵懂,第二次的遗憾,到今年的首银,这已经是第三次省赛之旅了_(:з」∠)_,第一次打星星,第二次错失银牌,这次感觉像是补回了上次银牌的样子?     时间回溯到几天前,第一天热身赛,恩,,,题很水,zp在旁边故意交错几发试试评测反馈,(我还交了几发java测...
  • qq978874169
  • qq978874169
  • 2017-05-13 22:43
  • 363

第九届山东理工大学ACM网络编程擂台赛 正式赛 sdut4075GCD - ldq的黑心啤酒厂

第九届山东理工大学ACM网络编程擂台赛 正式赛 sdut4075GCD - ldq的黑心啤酒厂
  • axuhongbo
  • axuhongbo
  • 2017-11-19 20:55
  • 104

2017 山东acm省赛

省赛终于结束了。经过了重重选拔。经过了一个月的煎熬磨练。 每天睁眼闭眼都是代码。(和女票的时间不算)重复感冒了两次。从省赛选拔快开始,连人都组不齐的我和胖子。把所有能想到的人问了又问,想了又想。如果随随便便将就组个队,我觉得是对自己和胖子的不负责。无奈之下我们只有把不是集训队的聪聪拉了进来。就这样 ...
  • Littlewhite520
  • Littlewhite520
  • 2017-05-09 01:26
  • 1181

I。quadratic equation 山东第八届省赛

quadratic equation Time Limit: 2000MS Memory Limit: 131072KB Problem Description With given integers a,b,c, you are asked to judge wh...
  • khn64
  • khn64
  • 2017-05-14 00:00
  • 181

nyoj 1239 引水工程 (河南省第八届acm程序设计大赛)

题目1239题目信息运行结果本题排行讨论区 引水工程 时间限制:2000 ms  |  内存限制:65535 KB 难度:3 描述 南水北调工程是优化水资源配置、促进区域协调发展的基础性工程,是新中国成立以来投资额最大、涉及面最广的战略性工程,事关中华民族...
  • su20145104009
  • su20145104009
  • 2016-02-17 18:22
  • 2783

“浪潮杯”山东省第八届ACM大学生程序设计竞赛 J

company Time Limit: 1000MS Memory Limit: 65536KB Submit Statistic Problem Description There are n kinds of g...
  • C18854805113
  • C18854805113
  • 2017-05-13 13:51
  • 390

山东理工ACM:2737

 题目描述 今天,小鑫在山上玩的时候,意外被推下了悬崖。 当然,掉下悬崖之后必然有奇遇。(剧情就是这么坑爹)就狗血的碰到了野人A和野人B。然后两位野人就给了他一本武功秘籍。  这是一本强大的武功秘籍(好像武功秘籍一直都很强大)。共有40层的内功心...
  • qq770935324
  • qq770935324
  • 2015-11-25 23:50
  • 1024
    个人资料
    • 访问:94267次
    • 积分:2812
    • 等级:
    • 排名:第14737名
    • 原创:185篇
    • 转载:9篇
    • 译文:0篇
    • 评论:33条
    博客专栏
    最新评论