11783. Суміжні обміни


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

N кульок розташовано в ряд зліва направо. Спочатку на \(i\)-й (\(1 \leq i \leq N\)) кульці написано ціле число \(i\).

Степан виконав \(Q\) операцій. \(i\)-а (\(1 \leq i \leq Q\)) операція була наступною.

  • Поміняйте кульку з цілим числом \(x_i\) з наступною кулькою праворуч. Якщо кулька з цілим числом \(x_i\) крайня права куля, поміняйте її з кулькою ліворуч.

Нехай \(a_i\) буде цілим числом, записаним на \(i\)-й (\(1 \leq i \leq N\)) кульці після операцій.

Знайдіть \(a_1,\ldots,a_N\).

Обмеження

  • \(2 \leq N \leq 2 \times 10^5\)
  • \(1 \leq Q \leq 2 \times 10^5\)
  • \(1 \leq x_i \leq N\)
  • Усі значення у вхідних даних є цілими числами.

Формат вхідних даних

Перший рядок містить цілі числа \(N, Q\), які розділяються пропуском.

Наступні  \(Q\) рядків містять цілі числа \(x_i\)

Формат вихідних даних

У вихідний потік виведіть \(a_1,\ldots,a_N\) з проацсками між ними.

Приклад вхідних даних

5 5
1
2
3
4
5

Приклад вихідних даних

1 2 3 5 4

Приклад вхідних даних

7 7
7
7
7
7
7
7
7

Приклад вихідних даних

1 2 3 4 5 7 6

Приклад вхідних даних

10 6
1
5
2
9
6
6

Приклад вихідних даних

1 2 3 4 5 7 6 8 10 9

Коментарі

Ще немає коментарів.