D. Использованные маркеры
ограничение по времени на тест
3 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Сегодня в самой большой аудитории в вашем университете пройдет $$$n$$$ лекций — все от разных лекторов, а ваша задача — выбрать, в каком порядке $$$ord$$$ они будут проходить.

Каждый лектор на протяжении всей лекции будет использовать один маркер, чтобы записывать что-либо на доске. К сожалению, маркеры пишут все хуже и хуже по мере их использования, так что некоторые лекторы могут отказаться использовать маркеры, которые пишут слишком плохо по их мнению.

Формально, у $$$i$$$-го лектора есть значение приемлемости $$$a_i$$$, которое означает, что он не будет использовать маркер, который был использован на $$$a_i$$$ или более лекций до него, и попросит заменить маркер. Более точно:

  • перед первой лекцией вы кладете новый маркер в аудиторию;
  • до того, как начать лекцию, $$$ord_j$$$-й лектор (в выбранном вами порядке) проверяет качество маркера, и если он был использован на $$$a_{ord_j}$$$ или более лекциях до него, то он попросит новый маркер;
  • если у вас просят новый маркер, то вы выбрасываете старый маркер, кладете новый в аудиторию, и лектор читает свою лекцию.

Как вы знаете, чем лучше маркер, тем легче слушателям понять, что же лектор пишет, поэтому вы хотите максимизировать количество использованных маркеров. К сожалению, начальство пристально следит за тем, сколько маркеров вы использовали, поэтому вы не можете заменять маркеры просто так перед каждой лекцией. То есть вы можете заменять маркеры только тогда, когда лектор вас попросит. Маркер считается использованным, если хотя бы один лектор использовал его для своей лекции.

Вы можете выбирать порядок $$$ord$$$, в котором лекторы читают свои лекции. Найдите такой порядок, в котором количество использованных маркеров будет максимально.

Входные данные

В первой строке задано одно целое число $$$t$$$ ($$$1 \le t \le 100$$$) — количество наборов входных данных.

В первой строке каждого набора входных данных задано одно целое число $$$n$$$ ($$$1 \le n \le 500$$$) — количество лекций и лекторов.

Во второй строке каждого набора входных данных записаны $$$n$$$ целых чисел $$$a_1, a_2, \dots, a_n$$$ ($$$1 \le a_i \le n$$$) — значение приемлемости каждого лектора.

Выходные данные

Для каждого набора входных данных выведите $$$n$$$ целых чисел — порядок лекторов $$$ord$$$, который максимизирует количество использованных маркеров. Лекторы пронумерованы от $$$1$$$ до $$$n$$$ в порядке входных данных. Если существует несколько ответов, то выведите любой из них.

Пример
Входные данные
4
4
1 2 1 2
2
2 1
3
1 1 1
4
2 3 1 3
Выходные данные
4 1 3 2
1 2
3 1 2
4 3 2 1
Примечание

В первом наборе наборе входных данных, один из оптимальных порядков следующий:

  1. $$$4$$$-й лектор читает первым. Маркер новый, поэтому лектор его не меняет;
  2. $$$1$$$-й лектор читает следующим. Маркер использовался на одной лекции и, так как $$$a_1 = 1$$$, лектор просит его поменять;
  3. $$$3$$$-й лектор читает следующим. Второй маркер использовался на одной лекции и, так как $$$a_3 = 1$$$, лектор просит его поменять;
  4. $$$2$$$-й лектор читает последний. Третий маркер использовался на одной лекции, но так как $$$a_2 = 2$$$, то лектор его использует.
В результате, использовано $$$3$$$ маркера.

Во втором наборе входных данных, использовано $$$2$$$ маркера.

В третьем наборе входных данных, использовано $$$3$$$ маркера.

В четвертом наборе, использовано $$$3$$$ маркера.