zoj 3658 Simple Function

zoj 3658 Simple Function,第1张

zoj 3658 Simple Function
#include<stdio.h>#include<math.h>int main(){int T;double A,B,C,D,E,a,b,c,bb,cc,x1,x2,temp1,temp2,y1,mins;scanf("%d",&T);while(T--){scanf("%lf%lf%lf%lf%lf",&A,&B,&C,&D,&E);a=A;b=B-A*D;c=C-A*E;mins=E-D*D/4;if(b==0){if(c==0)printf("[%.4f, %.4f]n",A,A);else if(c>0){if(mins>0)printf("(%.4f, %.4f]n",A,c/mins+A);else if(mins<0)printf("(-INF, %.4f] U (%.4f, INF)n",c/mins+A,A);else printf("(%.4f, INF)n",A);}else {if(mins>0)printf("[%.4f, %.4f)n",c/mins+A,A);else if(mins<0)printf("(-INF, %.4f) U [%.4f, INF)n",A,c/mins+A);else printf("(-INF, %.4f)n",A);}}else{x1=-c/b;if(x1*x1+D*x1+E==0){x2=-D-x1;if(x1==x2)printf("(-INF, %.4f) U (%.4f, INF)n",A,A);else{y1=b/(x1-x2);if(y1>0)printf("(-INF, %.4f) U (%.4f, %.4f) U (%.4f, INF)n",A,A,A+y1,A+y1);else printf("(-INF, %.4f) U (%.4f, %.4f) U (%.4f, INF)n",A+y1,A+y1,A,A);}}else{bb=D*b-2*c;cc=(c*c+E*b*b-D*b*c);if(cc>0){temp1=2.0*sqrt(cc);temp2=temp1+bb;temp1=-temp1+bb;if(temp1>0)printf("(-INF, %.4f] U [%.4f, INF)n",A+b*b/temp2,A+b*b/temp1);else if(temp1==0)printf("(-INF, %.4f]n",A+b*b/temp2);else if(temp2<0)printf("(-INF, %.4f] U [%.4f, INF)n",A+b*b/temp2,A+b*b/temp1);else if(temp2==0)printf("[%.4f, INF)n",A+b*b/temp1);else printf("[%.4f, %.4f]n",A+b*b/temp1,A+b*b/temp2);}else if(cc<0)printf("(-INF, INF)n");else printf("(-INF, INF)n");}}}return 0;}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4914735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存