#codefestivalchinac. [code_festival_china_c]Regular Polygon
[code_festival_china_c]Regular Polygon
Problem
You are given points of integer lattice on a rectangular coordinate plane, You want to choose some points from them to make a regular polygon by connecting the chosen points with straight lines. Also, you want to choose as many points as possible to make a regular polygon.
Determine the points you should choose to make a regular polygon which has most vertices possible. If there are more than one possible answers, you may choose any one of them.
Input
Input is given in the following format.
:
- On the first line, you will be given an integer , the number of integer lattice points given.
- On the following lines, you will be given the coordinates of each lattice. The -th line consists of two integers , the x,y coordinate of the -th lattice, respectively.
- Each given lattice is guaranteed to be distinct. In other words, for any integers , if then holds.
Output
On the first line, output , the number of points you chose to make a regular polygon which has most vertices possible.
On the following lines, output the index(-indexed) of each points you chose in ascending order .
If you cannot make any regular polygon from the given points, just output a single line containing .
Input Example 1
6
1 0
-1 0
0 1
0 -1
1 2
-1 2
Output Example 1
4
1
2
3
4
Among the given points, you can choose points to make a regular square, which has the most vertex possible. So the answer is and the indices of those points.
The points can also make a regular square. So, the indices of them, , will be considered correct too.
Input Example 2
4
0 0
1 0
2 0
3 0
Output Example 2
0
The given points are on a straight line. You cannot make any regular polygon from them.