program main implicit none integer::n integer::i,j,k,r real(kind=8)::s,a,b,c,tmp real(kind=8)::px,py,pz,x(300),y(300),z(300),area,height,volume,ans=0 real(kind=8)::dist(300,300) read*,n read(*,*)px,py,pz do i=1,n read(*,*)x(i),y(i),z(i) x(i)=x(i)-px y(i)=y(i)-py z(i)=z(i)-pz end do do i=1,300 do j=1,300 dist(i,j)=sqrt((x(i)-x(j))*(x(i)-x(j))+(y(i)-y(j))*(y(i)-y(j))+(z(i)-z(j))*(z(i)-z(j))) end do end do do i=1,n do j=i+1,n do k=j+1,n a=dist(i,j) b=dist(j,k) c=dist(k,i) s=(a+b+c)/2 area=sqrt(s*(s-a)*(s-b)*(s-c)) volume=(x(i)*y(j)*z(k)-x(i)*z(j)*y(k)-y(i)*x(j)*z(k)+y(i)*z(j)*x(k)+z(i)*x(j)*y(k)-z(i)*y(j)*x(k))/2 ans=ans+max(volume,-volume)/area end do end do end do print*,ans end program