미끄럼 대칭
시간 제한2초메모리 제한512 MB
길이가 같은 두 선분이 주어졌을 때, 한 선분을 다른 선분으로 보내는 미끄럼 반사(직선에 대한 반사와 그 직선에 평행한 평행이동의 합성)를 구한다.
문제
운동이란 두 점 사이의 거리를 보존하는 평면의 변환을 말한다. 즉, 운동에 의해 점 , 가 각각 , 으로 옮겨질 때 이다.
운동의 한 종류로 미끄럼 대칭이 있다. 미끄럼 대칭은 어떤 직선 에 대한 대칭과 에 평행한 벡터만큼의 평행이동을 합성한 것이다. 이 벡터는 영벡터일 수도 있다. 그림은 선분에 미끄럼 대칭을 적용한 예를 보여 준다.
여기에 그림이 들어갑니다
길이가 같은 임의의 두 선분에 대해, 한 선분을 다른 선분으로 미끄럼 대칭으로 옮길 수 있다는 것이 알려져 있다.
서로 다른 두 점 , 의 좌표와, , 와 같은 거리에 있는 두 점 , 의 좌표가 주어질 때, 점 를 으로, 점 를 으로 옮기는 미끄럼 대칭을 구하라.
입력
첫째 줄에 서로 다른 두 점 , 의 좌표인 네 개의 정수가 주어진다. 둘째 줄에도 서로 다른 두 점 , 의 좌표인 네 개의 정수가 주어진다. 임이 보장된다. 입력 파일의 모든 수의 절댓값은 1000을 넘지 않는다.
출력
찾은 미끄럼 대칭의 설명을 출력한다.
첫째 줄에는 대칭이 이루어지는 직선 위의 서로 다른 두 점의 좌표를 출력하고, 둘째 줄에는 에 평행한 평행이동 벡터의 좌표를 출력한다. 실수는 소수점 이하 6자리 이상으로 출력한다.