ROIRAC - Rời rạc hóa
Dữ liệu vào: standard input
Dữ liệu ra: standard output
Giới hạn thời gian: 2.0 giây
Giới hạn bộ nhớ: 128 megabyte
Đăng bởi: cuom1999

Cho dãy a[1], a[2],..., a[n]. Hãy rời rạc hóa dãy trên. Dãy đáp số b[1], b[2], ..., b[n] thỏa mãn điều kiện:

b[i] = số lượng giá trị phân biệt trong dãy a và <= a[i].

Ví dụ dãy [1, 4, 5, 4] sau khi rời rạc sẽ trở thành [1, 2, 3, 2]

+ b[1] = 1 vì trong dãy có 1 giá trị <= a[1] (1)

+ b[2] = 2 vì trong dãy có 2 giá trị <= a[2] (1 và 4)

Input: Dòng đầu chứa n. Dòng thứ hai chứa n số a[i]

Output: In ra n số là phần tử của dãy sau khi rời rạc hóa

Giới hạn: n <= 10^5, -10^9<=a[i] <= 10^9

Input 1:

4

1 4 5 4

Output 1:

1 2 3 2

Input 2:

6

-5 -10 0 0 -10 2019

Output 2:

2 1 3 3 1 4

 

 

 

Ví dụ

Back to Top