20. Чётность соседей

Не решаласьЛёгкая

В последовательности целых чисел $A$ требуется переставить минимальное число элементов так, чтобы никакие два соседних числа не были одной чётности.

Формат ввода

В первой строке входных данных записано целое число $n$ (1 $\le n \le$ 100,000) — количество элементов в последовательности.

Во второй строке записаны $n$ целых чисел $a_i$ (0 $\le a_i \le$ 1,000,000,000) — элементы последовательности.

Формат вывода

В первой строке выведите число $k$ (0 $\le k \le n$) — количество элементов последовательности, которые были переставлены.

Во второй строке выведите $n$ чисел $b_i$. Все числа последовательности $A$ должны быть выведены. Любые два соседних элемента последовательности должны быть различной чётности. Ровно $k$ индексов последовательности $B$ должны отличаться от последовательности $A$. Если подходящих последовательностей $B$ несколько, то выведите любую из них.

Если переставить элементы последовательности с требуемым условием невозможно, то выведите одно число -1.

Ограничения

Ограничение времени

2 с

Ограничение памяти

256 МБ

Пример 1

Ввод
3
1 2 3
Вывод
0
1 2 3

Пример 2

Ввод
2
1 1
Вывод
-1

Пример 3

Ввод
6
1 3 5 2 2 2
Вывод
2
1 2 5 2 3 2

Пример 4

Ввод
10
1 0 0 0 1 1 0 1 1 0
Вывод
4
1 0 1 0 1 0 1 0 1 0

Теги

Нужно войти, чтобы отправить решение.Войти