XTU1183 sum&times

来源:互联网 发布:linux gpio 编辑:程序博客网 时间:2024/06/09 17:39
题目描述
整数a,b,其中a+b = c,a*b = d,已知c和d,问是否存在a和b? 
输入
第一行是一个整数K,表示样例个数。每个样例占1行,两个整数c和d,0≤c,d≤10*9。 
输出
每行输出一个样例的结果,a和b(a≤b),之间用一个空格隔开。如果存在多组,输出a最小的那一组; 如果不存在这样的a和b,输出“None”(引号不用输出)。 
样例输入
2
5 6
7 11
样例输出
2 3

None

解题思路

暴力枚举即可,AC代码:

#include<cstdio>using namespace std;int main(){int k;scanf("%d",&k);while(k--){int a=0,b=0,c,d;scanf("%d%d",&c,&d);for(int i=0;i<=c/2;i++){    if(i*(c-i)!=d) continue;else{a=i;b=c-a;break;} }if(a+b!=c)printf("None\n");else printf("%d %d\n",a,b);}return 0;}



原创粉丝点击