hd 5615 Jam's math problem(枚举)
2016-07-23 23:26
239 查看
Jam's math problem
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1317 Accepted Submission(s): 587
Problem Description
Jam has a math problem. He just learned factorization.
He is trying to factorize ax2+bx+c into
the form of pqx2+(qk+mp)x+km=(px+k)(qx+m).
He could only solve the problem in which p,q,m,k are positive numbers.
Please help him determine whether the expression could be factorized with p,q,m,k being postive.
Input
The first line is a number T,
means there are T(1≤T≤100) cases
Each case has one line,the line has 3 numbers a,b,c(1≤a,b,c≤100000000)
Output
You should output the "YES" or "NO".
Sample Input
2
1 6 5
1 6 4
Sample Output
YES
NO
直接枚举判断 p * m + q * k 或 p * k + q * m 是否等于b
#include<stdio.h> #include<math.h> int main() { int t,i,j,a,b,c,p,q,k,m,falg; scanf("%d",&t); while(t--) { scanf("%d %d %d",&a,&b,&c); falg = 0; for(i = 1 ; i * i <= a ; i++) { if(a % i == 0) { p = i; q = a / i; for(j = 1 ; j * j <= c ; j++) { if(c % j == 0) { m = j; k = c / j; if(p * m + q * k == b || p * k + q * m == b) { falg = 1; break; } } } } if(falg) break; } if(falg) printf("YES\n"); else printf("NO\n"); } return 0; }
相关文章推荐
- BestCoder Round #84 <LIS 2进制 思维>
- PAT (Basic Level) Practise-1016
- Mac OS X 用终端破解附近 Wifi 密码教程
- BestCoder Round #84 题解
- 数据结构中各种树
- 极客学院JSP教程笔记(1)
- JAVA面向对象-----抽象类注意细节
- JAVA面向对象-----抽象类注意细节
- iOS之 深入探究copy与mutableCopy
- HAproxy 个人总结
- Android广播
- Android应用程序内部切换语言及自定义语言
- Android ListView几种Adapter用法简介
- 关于x86、i386、i486、i586和i686等名词的解释
- Java多线程研究01-创建线程
- jsp2
- 死锁的产生原因&&产生的必要条件&&处理方法
- python核心编程第六章练习
- A young man asks a homeless man to borrow his bucket, what happens next will burst you into tears
- jsp1