首页 > 代码库 > [51nod1265]四点共面
[51nod1265]四点共面
解题关键:此题有多种解法
三条直线组成的矩阵delta为0,则共面,否则,不共面 Gauss消元法
1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long ll; 4 struct tpoint{ 5 double x,y,z; 6 tpoint operator-(const tpoint &p)const{ 7 tpoint q; 8 q.x=x-p.x; 9 q.y=y-p.y;10 q.z=z-p.z;11 return q;12 }13 }p[4];14 int delta(){15 tpoint a,b,c;16 a=p[0]-p[1];17 b=p[0]-p[2];18 c=p[0]-p[3];19 return a.x*b.y*c.z+a.y*b.z*c.x+a.z*b.x*c.y-a.z*b.y*c.x-a.y*b.x*c.z-a.x*b.z*c.y;20 }21 int main(){22 int t;23 cin>>t;24 while(t--){25 for(int i=0;i<4;i++) cin>>p[i].x>>p[i].y>>p[i].z;26 if(delta()==0) cout<<"Yes\n";27 else cout<<"No\n";28 }29 return 0;30 }
[51nod1265]四点共面
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。