Ханека написала массив \(a\) из \(n\) целых положительных чисел. Изначально ни один элемент не обведён. За одну операцию Ханека может обвести один элемент. Один и тот же элемент можно обвести несколько раз.
После выполнения всех операций Ханека составляет последовательность \(r\), состоящую из всех не обведенных элементов \(a\) в порядке возрастания их индексов.
Также Ханека составляет другую последовательность \(p\), длина которой равна количеству выполненных операций, а \(p_i\) — индекс элемента, обведенного в кружок при выполнении \(i\)-й операции.
Ханека хочет выполнить несколько операций так, чтобы последовательность \(r\) была равна последовательности \(p\). Помогите ей добиться этого или сообщите, если это невозможно! Обратите внимание, что если решений несколько, то можно вывести любое из них.
Выходные данные
Выведите одно число \(-1\), если это невозможно.
В противном случае вывод состоит из двух строк. Первая строка содержит целое число \(z\), равное количеству выполненных операций. Вторая строка содержит \(z\) целых чисел, причем \(i\)-е целое число представляет собой индекс элемента, обведенного кружком в \(i\)-й операции. Если решений несколько, то можно вывести любое из них.
Примечание
В первом примере выполнение операций, аналогичных приведенным в примере, дает следующие результаты:
- Элемент \(a_2\) обводится \(1\) раз.
- Элемент \(a_3\) обводится \(2\) раза.
- Необведёнными элементами (упорядоченными по индексам) являются \(a_1\), \(a_4\) и \(a_5\). Таким образом, \(r=[3,2,3]\).
- \(p=[3,2,3]\)
Следовательно, \(r=p\).
Во втором примере это невозможно.
Примеры
| № | Входные данные | Выходные данные |
|
1
|
5 3 4 2 2 3
|
3
3 2 3
|
|
2
|
3 1 2 3
|
-1
|