HDU1071(数学题)

来源:互联网 发布:tt软件下载 编辑:程序博客网 时间:2024/05/19 13:25

题意:
给你这三个点的坐标,求面积
题解:
水题,不想写题解了出去骑行有点虚;
就是利用三点求出直线方程,抛物线方程,然后求积分
直接上代码
code:

#include<cstdio>int main(){    int n;    scanf("%d",&n);    double x,y,x1,y1,x2,y2;    while(n--)    {        scanf("%lf%lf%lf%lf%lf%lf",&x,&y,&x1,&y1,&x2,&y2);        double k=(y1-y2)/(x1-x2);        double z=y1-k*x1;        //printf("%.2f   %.2f\n",k,z);        double a=(y1-y)/((x1-x)*(x1-x));        double b=2*a*x+k;        double c=a*x*x-z+y;       // printf("%.2f   %.2f    %.2f\n",a,b,c);        double res=(1.0/3.0*a*x2*x2*x2-0.5*b*x2*x2+c*x2)-(1.0/3.0*a*x1*x1*x1-0.5*b*x1*x1+c*x1);        printf("%.2f\n",res);    }    return 0;}
原创粉丝点击