CF1477C.Nezzar and Nice Beatmap

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Nezzar loves the game osu!.

osu! is played on beatmaps, which can be seen as an array consisting of distinct points on a plane. A beatmap is called nice if for any three consecutive points A,B,CA,B,C listed in order, the angle between these three points, centered at BB , is strictly less than 9090 degrees.

Points A,B,CA,B,C on the left have angle less than 9090 degrees, so they can be three consecutive points of a nice beatmap; Points A,B,CA',B',C' on the right have angle greater or equal to 9090 degrees, so they cannot be three consecutive points of a nice beatmap.Now Nezzar has a beatmap of nn distinct points A1,A2,,AnA_1,A_2,\ldots,A_n . Nezzar would like to reorder these nn points so that the resulting beatmap is nice.

Formally, you are required to find a permutation p1,p2,,pnp_1,p_2,\ldots,p_n of integers from 11 to nn , such that beatmap Ap1,Ap2,,ApnA_{p_1},A_{p_2},\ldots,A_{p_n} is nice. If it is impossible, you should determine it.

输入格式

The first line contains a single integer nn ( 3n50003 \le n \le 5000 ).

Then nn lines follow, ii -th of them contains two integers xix_i , yiy_i ( 109xi,yi109-10^9 \le x_i, y_i \le 10^9 ) — coordinates of point AiA_i .

It is guaranteed that all points are distinct.

输出格式

If there is no solution, print 1-1 .

Otherwise, print nn integers, representing a valid permutation pp .

If there are multiple possible answers, you can print any.

输入输出样例

  • 输入#1

    5
    0 0
    5 0
    4 2
    2 1
    3 0

    输出#1

    1 2 5 3 4

说明/提示

Here is the illustration for the first test:

Please note that the angle between A1A_1 , A2A_2 and A5A_5 , centered at A2A_2 , is treated as 00 degrees. However, angle between A1A_1 , A5A_5 and A2A_2 , centered at A5A_5 , is treated as 180180 degrees.

首页