1265 四點共面
基準時間限制:1 秒 空間限制:131072 kb 分值: 0
難度:基礎題
給出三維空間上的四個點(點與點的位置均不相同),判斷這4個點是否在同乙個平面內(4點共線也算共面)。如果共面,輸出"yes",否則輸出"no"。
input
第1行:乙個數t,表示輸入的測試數量(1 <= t <= 1000)output第2 - 4t + 1行:每行4行表示一組資料,每行3個數,x, y, z, 表示該點的位置座標(-1000 <= x, y, z <= 1000)。
輸出共t行,如果共面輸出"yes",否則輸出"no"。input示例
1output示例1 2 0
2 3 0
4 0 0
0 0 0
yes解題思路:四點共面=三個向量共面,想到了補課時候小黃書上的式子:三向量共面的條件是混合積等於0。
混合積公式為:
**如下:
#include int main()
int r1,r2,r3,r4,r5,r6,r7,r8,r9;
r1=x[0]-x[1],r2=y[0]-y[1],r3=z[0]-z[1];//向量1的座標
r4=x[0]-x[2],r5=y[0]-y[2],r6=z[0]-z[2];//向量2的座標
r7=x[0]-x[3],r8=y[0]-y[3],r9=z[0]-z[3];//向量3的座標
int hunheji=r1*r5*r9+r2*r6*r7+r3*r4*r8-r3*r5*r7-r2*r4*r9-r1*r6*r8;//計算混合積
if(hunheji==0)
else
}return 0;
}
51nod1265四點共面
原題鏈結 四點共面即以某點指向其它三點的向量的混合積為0 如下 include include include include include include include include include include include include define ll long long us...
51Nod 1265 四點共面
1265 四點共面 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 給出三維空間上的四個點 點與點的位置均不相同 判斷這4個點是否在同乙個平面內 4點共線也算共面 如果共面,輸出 yes 否則輸出 no input 第1行 乙個數t,表示輸入的測試數量 1 t 1000 ...
51nod1265 四點共面
傳送門 點我 給出三維空間上的四個點 點與點的位置均不相同 判斷這4個點是否在同乙個平面內 4點共線也算共面 如果共面,輸出 yes 否則輸出 no input 第1行 乙個數t,表示輸入的測試數量 1 t 1000 第2 4t 1行 每行4行表示一組資料,每行3個數,x,y,z,表示該點的位置座標...