가느다란 다각형
시간 제한3초메모리 제한512 MB
각 (xbb, ybb)에 대해 2g ≤ p+q이면 xbb/g를 법으로 한 ybb/g의 모듈러 역원으로 만든 Q1을, 아니면 Q2의 네 꼭짓점을 출력한다.
문제
두 정수 와 가 주어진다. 다음 조건을 모두 만족하는 다각형을 가느다란 다각형이라고 하자.
- 꼭짓점이 3개 또는 4개다.
- 이웃한 두 변은 공통 끝점만 공유하고, 이웃하지 않은 두 변은 어떤 점도 공유하지 않는다.
- 모든 꼭짓점의 두 좌표는 정수다.
- 모든 꼭짓점 가 와 를 만족한다.
- 좌표가 인 꼭짓점, 좌표가 인 꼭짓점, 좌표가 인 꼭짓점, 좌표가 인 꼭짓점이 각각 하나 이상 있다.
- 넓이가 이하다.
가느다란 다각형은 볼록하지 않아도 된다. 한 쌍 에 대해 가느다란 다각형이 여러 개 존재하므로, 이 문제는 그중 하나를 다음과 같이 정해서 요구한다.
, , 라고 하자. 사각형 두 개를 정의한다.
- : 이면서 인 정수 는 유일하다. 이 와 를 써서, 의 꼭짓점을 순서대로 , , , 로 정한다. 의 넓이는 다.
- : 의 꼭짓점을 순서대로 , , , 로 정한다. 의 넓이는 다.
과 는 둘 다 가느다란 다각형이다. 이면 을, 그렇지 않으면 를 출력한다. 즉 넓이가 더 작은 쪽을 출력하고, 두 넓이가 같으면 을 출력한다.
입력
첫 줄에 테스트 케이스의 개수 이 주어진다 (). 다음 개의 줄에 테스트 케이스가 한 줄에 하나씩 주어진다. 각 줄은 두 정수 와 로 이루어진다 (, ).
출력
각 테스트 케이스마다 다음 형식으로 출력한다.
4
x1 y1
x2 y2
x3 y3
x4 y4
첫 줄은 꼭짓점의 개수이고 항상 다. 이어지는 네 줄에 문제에서 정한 순서대로 꼭짓점을 하나씩 출력하며, 두 좌표는 공백 하나로 구분한다.