Rời rạc hoá mảng

Xem dưới dạng PDF

Gửi bài giải


Điểm: 1
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Kiểu bài tập

Cho mảng A gồm N phần tử. Hãy thực hiện rời rạc hoá (coordinate compression) mảng A, tức là thay mỗi giá trị A[i] bằng thứ hạng (0-based) của nó trong mảng đã sắp xếp tăng dần, loại bỏ các giá trị trùng nhau.

Đầu vào
  • Dòng đầu tiên chứa số nguyên N (1 ≤ N ≤ 10^5).
  • Dòng thứ hai chứa N số nguyên A_i (-10^9 ≤ A_i ≤ 10^9).
Đầu ra

In ra N số nguyên là mảng sau khi rời rạc hoá, mỗi số cách nhau bởi một khoảng trắng.

Ví dụ
Input:
6
300 100 500 100 200 500

Output:
2 0 3 0 1 3
Giải thích

Các giá trị phân biệt sắp xếp: [100, 200, 300, 500]. 100 → 0, 200 → 1, 300 → 2, 500 → 3.


Nhận xét

Không có ý kiến tại thời điểm này.