判断四点共面模版、

原创 2016年08月30日 21:54:46

采用混合积的方式判断四点是否共面、

混合积资料:传送门




#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cmath>
using namespace std;
struct Point{
	double x,y,z;
	Point operator - (const Point &a){
		Point tmp;
		tmp.x = x - a.x;
		tmp.y = y - a.y;
		tmp.z = z - a.z;
		return tmp;
	}
}point[5];
Point Cross_product(Point a, Point b){
	Point tmp;
	tmp.x = a.y*b.z-a.z*b.y;
	tmp.y = a.z*b.x-b.z*a.x;
	tmp.z = a.x*b.y-a.y*b.x;
	return tmp;
}
double Dot_product(Point a, Point b){
	Point tmp;
	tmp.x = a.x*b.x;
	tmp.y = a.y*b.y;
	tmp.z = a.z*b.z;
	return tmp.x+tmp.y+tmp.z;
}
int main(){
	int t;scanf("%d",&t);
	while(t--){
		for(int i=0; i<4; ++i)
			scanf("%lf%lf%lf",&point[i].x,&point[i].y,&point[i].z);
		puts(Dot_product(point[3]-point[0], Cross_product(point[1]-point[0], point[2]-point[0]))==0.0?"Yes":"No");
	}
	return 0;
}


版权声明:吸猫大法、

相关文章推荐

四点共面问题

1265 四点共面 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 给出三维空间上的四个点(点与点的位...

51nod--1265 四点共面 (计算几何基础, 点积, 叉积)

题目:1265 四点共面 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出三维空间上的四个点(点与点的位置均不相同),判断这4个点是否在同一个平面内...
  • Aoxuets
  • Aoxuets
  • 2016年03月14日 22:26
  • 280

51nod 1265 四点共面 (水题)

1265 四点共面 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出三维空间上的四个点(点与点的位置均不相同),判断这4个点是否在同一个平面...

51nod:1265 四点共面(数学)

1265 四点共面 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题  收藏  关注 给出三维空间上的四个点(点与点的位...
  • zugofn
  • zugofn
  • 2017年02月28日 20:59
  • 198

51NOD1265(四点共面)

题目链接:点击打开链接 解题思路:   判断四点共面,先求出三点构成的平面的法向量(叉积),如果第四个点和前三点任意一点构成的向量与平面法向量垂直(点积为0),则四点共面.    回忆下...

共面波导超导动态电感

  • 2012年07月16日 21:05
  • 798KB
  • 下载

常见的共面阻抗计算模型

所谓的“共面”,即阻抗线和参考层在同一平面,即阻抗线被VCC/GND所包围, 周围的VCC/GND即为参考层。 相较于单端和差分阻抗模型,共面阻抗模型多了一个参数D1,即阻抗线和参 考层VCC/...

ccd 共面度检查程序

  • 2010年07月24日 23:52
  • 130KB
  • 下载

NYOJ 1099 Lan Xiang's Square(给出四点判断是否能构成正方形)

Lan Xiang's Square 时间限制:1000 ms  |  内存限制:65535 KB 难度:0 描述        Excavator technology which is st...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:判断四点共面模版、
举报原因:
原因补充:

(最多只允许输入30个字)