아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Держать строй!

시간 제한2초메모리 제한1024 MB

요약
군인들이 키 순서대로 서 있고, 각 명령은 주어진 두 군인의 현재 위치 사이 구간을 뒤집는다. 명령 구간은 서로 겹치지 않거나 포함 관계이므로 모든 명령을 수행한 뒤의 최종 배치를 출력한다.
난이도

보통10점 중 7점

유형
배열, 스택, 정렬, 구현
정답자
아직 제출이 없습니다

문제

В воинской части города Ковров решили провести строевую подготовку по новым правилам. Сначала все солдаты выстраиваются в шеренгу по росту, начиная с самого низкого. Затем они выполняют команды вида: <<С aa по bb - развернись!>>. Выполнение такой команды происходит следующим образом. Пусть a_posa\_{pos} --- номер места в строю, на котором стоит aa-ый по росту солдат, а b_posb\_{pos} --- bb-ый. Тогда отрезок строя с позиции min⁡(a_pos,b_pos)\min(a\_{pos}, b\_{pos}) до позиции max⁡(a_pos,b_pos)\max(a\_{pos}, b\_{pos}) должен развернуться. То есть, например, aa-ый по росту солдат поменяется местами с bb-ым.

Завтра утром молодой прапорщик Андрей Юрьевич будет проводить строевую подготовку в первый раз за свою службу, и на это придет посмотреть командир его части. Поэтому Андрей Юрьевич выписал вечером все команды на листочек и поручил Вам, как самому умному солдату, узнать до утра, как будет выглядеть шеренга после выполнения всех команд. Также известно, что для любых двух команд ii и jj(i≠ji \ne j) выполняется ровно одно из следующих условий:

  1. b_i<a_jb\_i < a\_j
  2. b_j<a_ib\_j < a\_i
  3. a_i<a_ja\_i < a\_j, b_j<b_ib\_j < b\_i
  4. a_j<a_ia\_j < a\_i, b_i<b_jb\_i < b\_j

То есть, любая пара отрезков, разворачиваемых по команде, или вложены друг в друга, или не пересекаются.

입력

В первой строке входного файла дано количество солдат nn (1≤n≤100,000 1 \le n \le 100,000) и количество команд mm (1≤m≤n21 \le m \le \frac{n}{2}). В следующих mm строках даны сами команды. Каждая команда описана двумя числами a_ia\_i и b_ib\_i (1≤a_i<b_i≤n1 \le a\_i < b\_i \le n)

출력

В единственной строке выведите через пробел nn чисел, где ii - число, равное номеру по росту солдата, стоящего на ii-том месте.

예제1

  1. 예제 1

    입력
    4 2
    1 4
    2 3
    
    예상 출력
    4 2 3 1