실수로 만든 유리
시간 제한0.5초메모리 제한1024 MB
모든 두 점 사이 거리가 무리수이고 모든 삼각형과 다각형의 넓이가 유리수가 되는 볼록 격자 N각형을 좌표 범위 안에서 구성한다.
문제
볼록 격자 각형이란, 개의 점으로 이루어진 모든 점의 좌표가 정수인 볼록 각형을 의미한다. 여기서 어떤 다각형이 볼록하다는 것은, 모든 내각이 미만이며, 다각형을 이루는 임의의 변을 연장해도 그 다각형의 내부를 지나지 않음을 의미한다.
볼록 격자 각형의 개의 점들 중 개의 점을 골라 만들 수 있는 선분의 개수는 개, 개 이상의 점을 골라 만들 수 있는 볼록 다각형의 수는 개가 존재한다.
이때, 개의 선분의 길이는 모두 무리수이며, 개의 볼록 다각형의 넓이는 모두 유리수가 되도록 하는 볼록 격자 각형을 실수로 만든 유리라 부르기로 했다.
이 주어졌을 때, 개의 점으로 이루어진 실수로 만든 유리가 있다면 찾아보자.
입력
첫 번째 줄에 정수 이 주어진다.
출력
첫 번째 줄부터 개의 줄에 걸쳐 개의 점으로 이루어진 실수로 만든 유리를 구성하는 점의 좌표 을 출력한다. 각 좌표의 범위는 을 만족해야 한다.
만약 주어진 범위 내의 정답이 존재하지 않는다면 대신 첫 번째 줄에 -1을 출력한다.