#ABC448F. Authentic Traveling Salesman Problem

Authentic Traveling Salesman Problem

Authentic Traveling Salesman Problem

  • 时间限制:2 秒
  • 内存限制:256 MiB

题目描述

二维平面上有 NN 个地点,编号为 11NN。地点 ii 的坐标为 (Xi,Yi)(X_i,Y_i)

你要从地点 11 出发,恰好访问每个地点一次,最后回到地点 11。从地点 ii 移动到地点 jj 需要 XiXj+YiYj|X_i-X_j|+|Y_i-Y_j| 秒。

请输出一条路线,使得从地点 11 出发、访问所有地点并回到地点 11 的总用时不超过 101010^{10} 秒。题目保证在给定约束下至少存在一条满足条件的路线。

输入格式

输入由标准输入给出,格式如下:

$$\begin{aligned} &N\\ &X_1\ Y_1\\ &X_2\ Y_2\\ &\vdots\\ &X_N\ Y_N \end{aligned}$$

输出格式

设第 ii 个访问的地点为 pip_i,输出 p1,p2,,pNp_1,p_2,\ldots,p_N。输出必须满足:

  • (p1,p2,,pN)(p_1,p_2,\dots,p_N)(1,2,,N)(1,2,\dots,N) 的一个排列;
  • p1=1p_1=1
  • d(i,j)=XiXj+YiYjd(i,j)=|X_i-X_j|+|Y_i-Y_j|,则 $\displaystyle\sum_{i=1}^{N}d\bigl(p_i,p_{(i\bmod N)+1}\bigr)\le10^{10}$。

若有多个合法答案,输出任意一个即可。

样例输入 1

3
0 6
3 5
2 4

样例输出 1

1 3 2

样例输入 2

10
9706344 19786176
19341349 15565412
5711023 19068083
12521132 14054301
14767612 17088029
14961700 18526945
13801766 5740101
6581153 8643675
13176196 16586661
4086263 5172719

样例输出 2

1 5 2 6 4 7 9 8 3 10

数据范围

  • 1N6×1041\le N\le6\times10^4
  • 0Xi,Yi2×1070\le X_i,Y_i\le2\times10^7
  • 所有地点坐标两两不同;
  • 所有输入值均为整数。
子任务编号 分值 特殊限制
1 20 N250N\le250
2 40 N498N\le498
3 无特殊限制