#include <stdio.h>
#include <math.h>
#define eps 1e-6
#define PI acos(-1)
#define INF 1<<30
struct Pnt{
double x,y;
Pnt(){};
Pnt(double a,double b){
x=a;y=b;
}
friend Pnt operator - (const Pnt a,const Pnt b){
Pnt c;
c.x=a.x-b.x;
c.y=a.y-b.y;
return c;
}
friend Pnt operator + (const Pnt a,const Pnt b){
Pnt c;
c.x=a.x+b.x;
c.y=a.y+b.y;
return c;
}
};
int sgn(double d) {
return (d>+eps)-(d<-eps);
}
int fcmp(Pnt a,Pnt b)
{
if (sgn(a.x-b.x)==0&&sgn(a.y-b.y)==0) return 1;
else return 0;
}
int main()
{
Pnt a,b,c,d;
while(~scanf("%lf%lf%lf%lf%lf%lf%lf%lf",&a.x,&a.y,&b.x,&b.y,&c.x,&c.y,&d.x,&d.y)){
Pnt e;
if (fcmp(a,c)){
e=a+(b-a+d-c);
}
if (fcmp(a,d)){
e=a+(b-a+c-d);
}
if (fcmp(b,c)){
e=b+a-b+d-c;
}
if (fcmp(b,d)){
e=b+a-b+c-d;
}
printf("%.3f %.3f\n",e.x,e.y);
}
return 0;
}
poj 2624 4th Point
最新推荐文章于 2016-08-15 19:53:31 发布