51nod 1265 四点共面(计算几何)

来源:互联网 发布:2016淘宝小号都死完了 编辑:程序博客网 时间:2024/05/14 19:38
#include<cstdio>using namespace std;/*给出三维空间上的四个点(点与点的位置均不相同),判断这4个点是否在同一个平面内(4点共线也算共面)*/int fun(int a1,int b1,int a2,int b2){    return a1*b2-a2*b1;}int main(){    int t;    int x[5],y[5],z[5];    scanf("%d",&t);    while(t--)    {        for(int i=1;i<=4;i++)        {            scanf("%d%d%d",&x[i],&y[i],&z[i]);        }        int ans=(x[4]-x[1])*fun(y[2]-y[1],z[2]-z[1],y[3]-y[1],z[3]-z[1])-        (x[2]-x[1])*fun(y[4]-y[1],z[4]-z[1],y[3]-y[1],z[3]-z[1])+        (x[3]-x[1])*fun(y[4]-y[1],z[4]-z[1],y[2]-y[1],z[2]-z[1]);        if(ans)        {            printf("No\n");        }        else        {            printf("Yes\n");        }    }    return 0;}
原创粉丝点击