302959: CF576C. Points on Plane
Memory Limit:256 MB
Time Limit:2 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Points on Plane
题意翻译
题目描述 给出$N$个整点$(x_i,y_i)$,求一个排列$p_i$,使得$\sum\limits_{i=2}^N |x_{p_i} - x_{p_{i-1}}| + |y_{p_i} - y_{p_{i-1}}| \leq 2.5 \times 10^9$。 输入数据 输入的第一行一个正整数$N(1 \leq N \leq 10^6)$表示点的数量,接下来$N$行每行两个非负整数$x_i,y_i(0 \leq x_i,y_i \leq 10^6)$描述一个点。 输出数据 一行$N$个数表示你给出的排列,每两个数之间用一个空格隔开。题目描述
On a plane are $ n $ points ( $ x_{i} $ , $ y_{i} $ ) with integer coordinates between $ 0 $ and $ 10^{6} $ . The distance between the two points with numbers $ a $ and $ b $ is said to be the following value: ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF576C/a7b10c3a7062b1d795a13da5c9f45189a64ee615.png) (the distance calculated by such formula is called Manhattan distance). We call a hamiltonian path to be some permutation $ p_{i} $ of numbers from $ 1 $ to $ n $ . We say that the length of this path is value ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF576C/78b5c50a357f607418f8669a3857aad07c09d987.png). Find some hamiltonian path with a length of no more than $ 25×10^{8} $ . Note that you do not have to minimize the path length.输入输出格式
输入格式
The first line contains integer $ n $ ( $ 1<=n<=10^{6} $ ). The $ i+1 $ -th line contains the coordinates of the $ i $ -th point: $ x_{i} $ and $ y_{i} $ ( $ 0<=x_{i},y_{i}<=10^{6} $ ). It is guaranteed that no two points coincide.
输出格式
Print the permutation of numbers $ p_{i} $ from $ 1 $ to $ n $ — the sought Hamiltonian path. The permutation must meet the inequality ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF576C/2d8fdd98534a91e5b367141c299ffdad8da235c6.png). If there are multiple possible answers, print any of them. It is guaranteed that the answer exists.
输入输出样例
输入样例 #1
5
0 7
8 10
3 4
5 0
9 12
输出样例 #1
4 3 1 2 5