#SGM0000022. Xóa phần tử khỏi danh sách (List Removals)

Xóa phần tử khỏi danh sách (List Removals)

Xóa phần tử khỏi danh sách (List Removals)

Nguồn: CSES

Phiên bản: Phước Hưng OJ Extended

Đề bài

Cho một danh sách gồm nn số nguyên. Trong quá trình xử lý, nếu danh sách hiện có kk phần tử thì chúng được đánh số từ 11 đến kk theo thứ tự hiện tại.

Có đúng nn thao tác xóa. Ở thao tác thứ ii, hãy xóa phần tử đang ở vị trí pip_i và in giá trị của phần tử vừa xóa.

Input

Dòng đầu chứa số nguyên nn.

Dòng thứ hai chứa x1,x2,…,xnx_1,x_2,\ldots,x_n.

Dòng thứ ba chứa p1,p2,…,pnp_1,p_2,\ldots,p_n, trong đó 1≤pi≤n−i+11\le p_i\le n-i+1.

Output

In các giá trị theo đúng thứ tự chúng bị xóa.

Subtask

  • Subtask 1 — 20%: 1≤n≤501\le n\le 50.
  • Subtask 2 — 30%: 1≤n≤50001\le n\le 5000.
  • Subtask 3 — 50%: 1≤n≤2⋅1051\le n\le 2\cdot10^5, 1≤xi≤1091\le x_i\le10^9.

Ví dụ

Input

5
2 6 1 4 2
3 1 3 1 1

Output

1 2 2 6 4

Giải thích

Ban đầu phần tử thứ 33 là 11, nên giá trị đầu tiên bị xóa là 11. Sau mỗi lần xóa, các vị trí được đánh số lại theo danh sách còn lại.