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

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

바구니 순서 바꾸기

면접 대비

시간 제한1초메모리 제한256 MB

요약
1부터 N까지 번호가 적힌 바구니에 M개의 구간 회전을 순서대로 적용하고 왼쪽부터 최종 순서를 출력한다.
난이도

쉬움10점 중 2점

유형
시뮬레이션, 배열
정답자
아직 제출이 없습니다

문제

도현이는 바구니를 NN개 가지고 있고, 각 바구니에는 1번부터 NN번까지 번호가 순서대로 적혀 있다. 바구니는 일렬로 놓여 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음을 2번째 바구니, ..., 가장 오른쪽을 NN번째 바구니라고 부른다.

도현이는 앞으로 바구니의 순서를 MM번 회전시키려고 한다. 한 번 회전시킬 때는 순서를 회전시킬 범위를 정하고, 그 범위 안에서 기준이 될 바구니를 하나 고른다. 고른 범위의 양 끝이 beginbegin과 endend이고 기준이 되는 위치가 midmid이면, begin,begin+1,…,mid−1,mid,mid+1,…,end−1,endbegin, begin+1, \dots, mid-1, mid, mid+1, \dots, end-1, end 순서로 놓여 있던 바구니가 mid,mid+1,…,end−1,end,begin,begin+1,…,mid−1mid, mid+1, \dots, end-1, end, begin, begin+1, \dots, mid-1 순서로 바뀐다.

바구니의 순서를 어떻게 회전시킬지 주어졌을 때, MM번 모두 회전시킨 다음 가장 왼쪽 바구니부터 바구니에 적혀 있는 번호를 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 NN (1≤N≤1001 \le N \le 100)과 MM (1≤M≤1001 \le M \le 100)이 주어진다.

둘째 줄부터 MM개의 줄에 바구니의 순서를 회전시키는 방법이 한 줄에 하나씩 주어진다. 방법은 세 정수 ii, jj, kk로 나타내고, 왼쪽에서 ii번째 바구니부터 jj번째 바구니까지의 순서를 회전시키며 그때 기준 바구니는 kk번째 바구니라는 뜻이다. (1≤i≤k≤j≤N1 \le i \le k \le j \le N)

도현이는 입력으로 주어진 순서대로 바구니의 순서를 회전시킨다.

출력

모든 회전을 끝낸 다음, 가장 왼쪽 바구니부터 바구니에 적혀 있는 번호를 공백 하나로 구분해 한 줄에 출력한다.

예제3

  1. 예제 1

    입력
    10 5
    1 6 4
    3 9 8
    2 10 5
    1 3 3
    2 6 2
    
    예상 출력
    1 4 6 2 3 7 10 5 8 9
    
  2. 예제 2

    입력
    1 1
    1 1 1
    
    예상 출력
    1
    
  3. 예제 3

    입력
    2 1
    1 2 2
    
    예상 출력
    2 1