D - Examination Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 7

問題文

AtCoder 高校には N 人の生徒が在籍し、生徒 1 ,生徒 2 , \ldots ,生徒 N と番号付けられています。 ある日、全員が数学と英語のテストを受け、 生徒 i (1 \leq i \leq N) は数学で A_i 点、英語で B_i 点を取りました。AtCoder 高校では、次のようにして成績の順位がつけられます。

  • 数学と英語の合計点が高い生徒が上位
  • 合計点が等しいとき、数学の点が高い生徒が上位
  • 合計点および数学の点が等しいとき、番号が小さい生徒が上位

成績が上位の方から順に、N 人の生徒番号を出力してください。

制約

  • 2 \leq N \leq 2 \times 10^5
  • 0 \leq A_i \leq 10^9
  • 0 \leq B_i \leq 10^9
  • 入力は全て整数である。

入力

入力は以下の形式で標準入力から与えられる。

N
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_N

出力

以下の形式で、1 行に出力せよ。

X_1 X_2 \ldots X_N

ただし、X_i は、N 人の生徒を成績が上位の方から順に並べたとき、i 番目にくる生徒の番号である。


入力例 1

5
5 10 10 12 5
10 10 5 0 10

出力例 1

2 3 1 5 4

順位は次のように判定されます。

  • 数学と英語の合計点は順に、15 , 20 , 15 , 12 , 15 であるので、生徒 2 が成績順で 1 番目に、生徒 1 , 3 , 5 がそれぞれ 2 , 3 , 4 番目のいずれかに、生徒 45 番目に来ます。
  • 生徒 1 , 3 , 5 は数学と英語の合計点が同じであり、数学の点数は順に 5 , 10 , 5 であるので、生徒 3 が成績順で 2 番目に、生徒 1 , 5 がそれぞれ 3 , 4 番目のいずれかに来ます。
  • 生徒 1 , 5 は数学と英語の合計点および数学の点が同じであるので、番号の小さい生徒 1 が成績順で 3 番目に、大きい生徒 54 番目に来ます。

よって、成績が上位の方から順に、生徒 2 , 3 , 1 , 5 , 4 となります。


入力例 2

2
0 1000000000
0 1000000000

出力例 2

2 1

Score : 7 points

Problem Statement

There are N students in AtCoder High School, given student IDs and called Student 1, Student 2, \ldots, Student N. One day, all of them took tests in math and English, and Student i (1 \leq i \leq N) scored A_i in math and B_i in English. In this school, the students are ranked as follows.

  • A student with a higher total score in math and English ranks higher.
  • When students have the same total score, a student with a higher score in math ranks higher.
  • When students have both the same total score and the same score in math, a student with a smaller student ID ranks higher.

Print the student IDs of the N students in descending order of rank.

Constraints

  • 2 \leq N \leq 2 \times 10^5
  • 0 \leq A_i \leq 10^9
  • 0 \leq B_i \leq 10^9
  • All values in input are integers.

Input

Input is given from Standard Input in the following format:

N
A_1 A_2 \ldots A_N
B_1 B_2 \ldots B_N

Output

Print a line in the following format:

X_1 X_2 \ldots X_N

Here, X_i should be the student ID of the student who ranks i-th from the top.


Sample Input 1

5
5 10 10 12 5
10 10 5 0 10

Sample Output 1

2 3 1 5 4

The students are ranked as follows.

  • The respective students' total scores in math and English are 15, 20, 15, 12, 15, so Student 2 comes 1-st, Students 1, 3, 5 come 2-nd, 3-rd, 4-th in some order, and Student 4 comes 5-th.
  • Students 1, 3, 5, with the same total score in math and English, scored 5, 10, 5 in math, respectively, so Student 3 comes 2-nd, and Students 1, 5 come 3-rd, 4-th in some order.
  • Since Students 1 and 5 have both the same total score and the same score in math, Student 1, with the smaller student ID, comes 3-rd, and Student 5, with the larger student ID, comes 4-th.

Therefore, the students are ranked in the order 2, 3, 1, 5, 4 from top to bottom.


Sample Input 2

2
0 1000000000
0 1000000000

Sample Output 2

2 1