ZOJ 1090-The Circumference of the Circle

来源:互联网 发布:java得到当前系统时间 编辑:程序博客网 时间:2024/05/20 18:55

需要用到数学知识。。然而我都忘了。。于是搜了解题报告

在圆的内接三角形的性质中有这样一条:三角形的任何两边的乘积的等于第三边上的高于其外接圆直径的乘积

求面积可以用海伦公式S=sqrt(p*(p-a)*(p-b)*(p-c)),其中p=(a+b+c)/2

#include<stdio.h>#include<math.h>#define pi 3.141592653589793double dis(double x,double y){    return sqrt(x*x+y*y);}int main(){    double x1,y1,x2,y2,x3,y3;    while(~scanf("%lf%lf%lf%lf%lf%lf", &x1, &y1, &x2, &y2, &x3, &y3))    {        double d1,d2,d3;        double p,h,d,c;        d1=dis(x1-x2,y1-y2);        d2=dis(x1-x3,y1-y3);        d3=dis(x2-x3,y2-y3);        p=(d1+d2+d3)/2;        h=sqrt(p*(p-d1)*(p-d2)*(p-d3))*2/d3;        d=d1*d2/h;        c=pi*d;        printf("%.2lf\n",c);    }    return 0;}



0 0
原创粉丝点击