2021: Кількість проходів сортування 2

Перегляд у форматі PDF

Надіслати розв'язок

Бали: 18,00 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem type

Вам надано масив, який містить кожне число між ~1…n~ рівно один раз. Ваше завдання зібрати числа від 1 до ~n~ у порядку зростання.

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

Ваше завдання — повідомити кількість раундів після кожної операції.

Обмеження

  • ~1≤n,m≤2⋅10^5~
  • ~1≤a,b≤n~

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

У першому рядку є два цілі числа ~n~ і ~m~: розмір масиву та кількість операцій.

У наступному рядку є ~n~ цілих чисел ~x_1 ​ , x_2 ​ ,…, x_n~ ​ : числа в масиві.

Нарешті, є ~m~ рядків, які описують операції. У кожному рядку є два цілих числа ~a~ і ~b~: числа на позиціях ~a~ і ~b~ поміняти місцями.

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

Вивести ~m~ цілих чисел: кількість раундів після кожної заміни.

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

5 3
4 2 1 5 3
2 3
1 5
2 3

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

2
3
4

Коментарі

Please read the guidelines before commenting.


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