Олимпиадный тренинг

Задача . std::unique


Задача

Темы:
Для этой задачи необходимо ознакомиться с функцией lower_bound.

Сжатием координат массива размера n называют сопоставление его элементов целым числам от 0 до n-1 с сохранением относительного порядка. То есть, чтобы для любых a и b из исходного массива выполнялось следующее: если a = b, то a' = b' и если a < b, то a' < b', при условии, что сжатие координат превращает a в a' и b в b'.

Вам дано q запросов, где для каждого запроса вам дан массив целых чисел размера ni, и вам необходимо произвести его сжатие координат и вывести результат.

Входные данные:
В первой строке дано число q (1 <= q <= 20) - число запросов.
Далее для каждого запроса сперва в отдельной строке дается число ni (1 <= ni <= 5000) - размер массива, затем в следующей строке дается ni целых чисел, по модулю не превышающих 109 - элементы массива.

Выходные данные:
Для каждого запроса в отдельной строке выведите результат сжатия координат данных массивов.

Примеры:
 
Входные данные Выходные данные
2
5
300 -200 100 400 100
3
3 3 3
2 0 1 3 1
0 0 0

 

time 500 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w6412
Комментарий учителя