PivotOJ

Fair Fruitcake Fragmenting

시간 제한: 3000ms메모리 제한: 1024MB출처: GCPC 2024BOJ 32482

문제

Frida's birthday is just coming up, and as her best friend, you obviously baked a cake for her. Since you know that Frida loves rotational symmetry, you thought to bake a cake that looks the same from above when rotated by 180180^\circ. Of course, you could have simply baked a boring round cake, but without a perfectly round cake tin, this sounds easier than done. Therefore, you decided to bake a cake whose shape can be described by straight line segments.

Figure F.1: Visualization of Sample Input 2. The swirly cake looking like an S can be cut into the red and blue part with a single cut.

However, after you are done with your cake, you notice that you also want to cut the cake into two equal pieces, one for Frida and one for yourself. More precisely, you wonder if it is possible to cut the cake along an infinite line such that it splits into exactly two parts of equal weight. You can assume that the cake has uniform density and height.

입력

The input consists of:

  • One line containing an even integer nn (4n1054 \leq n\leq 10^5), the number of points needed to describe the cake's shape.
  • nn lines, each containing two integers xx, yy (0x,y1060\leq x,y \leq 10^6), the xx and yy coordinates of a point on the border of the cake's shape.

The following additional guarantees are given for the shape of the cake:

  • The cake has a 180180^\circ rotational symmetry.
  • The points are given in counterclockwise order.
  • No three consecutive points are collinear.
  • The shape is simple (no segments intersect and only consecutive segments touch at their ends).

출력

Output two different points on the desired line as x1x_1/c1c_1 y1y_1/d1d_1 x2x_2/c2c_2 y2y_2/d2d_2, where xi|x_i|, yi|y_i|, ci|c_i| and di|d_i| are integers and at most 10910^9, and xix_i/cic_i is the first coordinate of point ii and yiy_i/did_i is the second (1i21\leq i\leq2). If the denominator of a fraction is 11 you may output only the numerator. Fractions do not have to be reduced. If there is no such line, output "impossible" instead.

It can be shown that if there is a line as desired, it is possible to represent it in the given format.

예제

예제 1

입력
4
0 0
2 0
2 2
0 2
출력
1 1 1337/42 3141/1000

예제 2

입력
20
7 1
8 2
8 5
7 6
4 6
4 4
3 4
3 7
6 7
7 8
2 8
1 7
1 4
2 3
5 3
5 5
6 5
6 2
3 2
2 1
출력
11 13 -2 -4

예제 3

입력
10
11 5
10 2
12 6
2 2
7 3
1 1
2 4
0 0
10 4
5 3
출력
impossible
이 문제는 채점 준비 중입니다. 테스트 데이터가 확보되면 제출이 가능합니다.