| Codeforces Round 1096 (Div. 3) |
|---|
| Закончено |
Юсеф дал вам массив $$$a$$$ из $$$n$$$ положительных целых чисел.
Обозначим через $$$f(a)$$$ количество подмассивов$$$^{\text{∗}}$$$ массива $$$a$$$, произведение элементов которых делится на $$$6$$$.
Более формально, для каждой пары индексов $$$l$$$ и $$$r$$$ таких, что $$$1 \le l \le r \le n$$$, рассмотрим подмассив $$$a_l, a_{l+1}, \dots, a_r$$$. Этот подмассив учитывается, если произведение его элементов делится на $$$6$$$.
Например, если $$$a = [1, 6, 2]$$$, то подмассивы, произведение которых делится на $$$6$$$, это $$$[6]$$$, $$$[1, 6]$$$, $$$[6, 2]$$$, $$$[1, 6, 2]$$$, поэтому $$$f(a) = 4$$$.
Ваша задача — переставить элементы массива $$$a$$$ так, чтобы $$$f(a)$$$ было минимальным. Если существует несколько способов, можно вывести любой из них.
$$$^{\text{∗}}$$$Массив $$$b$$$ является подмассивом массива $$$a$$$, если $$$b$$$ можно получить из $$$a$$$ удалением нескольких (возможно, нуля или всех) элементов с начала и нескольких (возможно, нуля или всех) элементов с конца.
В первой строке ввода содержится целое число $$$t$$$ ($$$1 \le t \le 10^4$$$) — количество наборов входных данных.
В первой строке каждого набора входных данных содержится целое число $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — размер массива.
Во второй строке каждого набора входных данных содержатся $$$n$$$ целых чисел $$$a_1, a_2, \dots, a_n$$$ ($$$1 \le a_i \le 10^9$$$) — элементы массива.
Гарантируется, что сумма $$$n$$$ по всем наборам входных данных не превосходит $$$2 \cdot 10^5$$$.
Для каждого набора входных данных выведите массив после перестановки его элементов так, чтобы $$$f(a)$$$ было минимальным. Если существует несколько ответов, можно вывести любой из них.
5612 7 9 4 18 543 6 2 871 10 15 20 3 6 9511 14 21 2 536 6 6
12 18 4 7 5 9 2 8 3 6 6 10 20 1 15 3 9 21 5 11 2 14 6 6 6
В первом наборе входных данных оптимальной является перестановка $$$a = [12, 18, 4, 7, 5, 9]$$$. Подмассивы, произведение которых делится на $$$6$$$, это:
Следовательно, $$$f(a) = 12$$$. Можно доказать, что никакая другая перестановка не даёт меньшего значения $$$f(a)$$$.
| Название |
|---|


