Вибір команди#11755

Вибір команди

4 секунди
128 мегабайтів
Середня

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

Враховуючи вибори двох лідерів (перший капітан команди починає першим), обчисліть список гравців у кожній команді.

Вхідні дані

Складається з трьох рядків.

Перший рядок містить єдине ціле число n~(2 \le n \le 4 \cdot 10^6, кратне ).

Другий рядок містить цілих чисел a_1, a_2, ..., a_{n/2}, що представляють вибори першого капітана команди: під час (2k - 1)-го ходу перший капітан вибрав a_k-го гравця, що залишився.

Третій рядок містить цілих чисел b_1, b_2, ..., b_{n/2}, що представляють вибори другого капітана команди: під час -го ходу другий капітан вибрав b_k-го гравця, що залишився.

Вибори капітанів команди є дійсними: на кожному етапі вони знаходяться між та кількістю залишених гравців (включно).

Вихідні дані

Виведіть два рядки, кожен з яких містить цілих чисел.

Перший рядок має містити список x_1, x_2, ..., x_{n/2} гравців, обраних для участі в першій команді, у порядку їх вибору: гравець x_k був обраний під час (2k - 1)-го ходу.

Другий рядок має містити список y_1, y_2, ..., y_{n/2} гравців, обраних для участі в другій команді, у порядку їх вибору: гравець y_k був обраний під час -го ходу.

Приклади

Приклад 1

Loading
Loading