山东理工ACM[2108]一元二次方程Ⅲ
一元二次方程Ⅲ
Time Limit: 3000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
求一元二次方程x^2+bx+c=0的解。b、c为任意整数。且b^2-4c为完全平方数。
输入
输入数据的第一行是一个数T,表示测试数据的个数(1≤T≤100)。以下的T行数据,每行包括b、c两个数(-10^8≤b、c≤10^8),用空格分开。
输出
对于每个测试实例,请输出一元二次方程的两根形如: X1,X2 且X1≤X2。 每个实例的输出占一行。
示例输入
1 4 4
示例输出
-2,-2
#include <stdio.h> #include <math.h> int main() { int n,i; long long b,c,x1,x2; scanf("%d",&n); for(i=0;i<n;i++) { scanf("%lld %lld",&b,&c); x1=(-b+sqrt(b*b-4*c))/2; x2=(-b-sqrt(b*b-4*c))/2; if(x1<x2) printf("%lld,%lld\n",x1,x2); else printf("%lld,%lld\n",x2,x1); } return 0; }