結果

問題 No.132 点と平面との距離
ユーザー takakintakakin
提出日時 2020-07-16 23:07:54
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 601 ms / 5,000 ms
コード長 538 bytes
コンパイル時間 370 ms
コンパイル使用メモリ 87,200 KB
実行使用メモリ 77,756 KB
最終ジャッジ日時 2023-08-17 02:18:01
合計ジャッジ時間 2,088 ms
ジャッジサーバーID
(参考情報)
judge15 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 103 ms
77,208 KB
testcase_01 AC 241 ms
77,756 KB
testcase_02 AC 601 ms
77,712 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
input=lambda: sys.stdin.readline().rstrip()
n=int(input())
x1,y1,z1=map(float,input().split())
XYZ=[]
for _ in range(n):
	x,y,z=map(float,input().split())
	XYZ.append((x-x1,y-y1,z-z1))

def f(p1,p2,p3):
	x1,y1,z1=p1
	x2,y2,z2=p2
	x3,y3,z3=p3
	a=(y2-y1)*(z3-z1)-(z2-z1)*(y3-y1)
	b=(z2-z1)*(x3-x1)-(x2-x1)*(z3-z1)
	c=(x2-x1)*(y3-y1)-(y2-y1)*(x3-x1)
	d=-(a*x1+b*y1+c*z1)
	return abs(d)/((a**2+b**2+c**2)**0.5)

ans=0
for i in range(n):
	for j in range(i+1,n):
		for k in range(j+1,n):
			ans+=f(XYZ[i],XYZ[j],XYZ[k])
print(ans)


0