[BOJ 12942] 원 위의 춤

View as PDF

Submit solution

Points: 4
Time limit: 2.0s
Memory limit: 512M

Problem type
Allowed languages
Assembly, Awk, C, C++, Java, Pascal, Perl, Python, Sed, Text

N명의 남자들과 N명의 여자들이 원형 대형으로 춤을 추고 있다. (단, N은 짝수이다.) 여자들은 원의 안쪽에서 움직이지 않으며, 남자들이 원의 바깥쪽에서 움직이는 형태의 춤이다. 남자들과 여자들은 각각 시계 방향으로 1~N까지의 번호가 붙어 있으며, 처음에는 같은 번호의 남자-여자끼리 서로를 마주 보고 있다. 춤은 여러 개의 동작으로 이루어지며, 동작의 종류는 다음과 같다.</p>

  1. 정수 x가 주어지면, 모든 남자들이 시계 방향으로 x칸만큼 이동한다. (만약 x가 음수라면, 모든 남자들이 시계 반대 방향으로 -x칸만큼 이동한다.)
  2. 홀수번째 여자 앞에 있는 남자와 짝수번째 여자 앞에 있는 남자가 자리를 바꾼다. 즉, 모든 1에서 N/2 사이의 i에 대해 2i-1번 여자 앞에 서있는 남자가 2i번 여자 앞에 서 있는 남자와 자리를 바꾼다.

이러한 동작을 총 Q번 수행한 후, 남자와 여자의 위치 관계를 출력하시오.

입력 형식

입력의 첫 번째 줄에는 N과 Q가 주어진다. (2 ≤ N ≤ 100,000; 1 ≤ Q ≤ 200,000)</p>

다음 Q개의 줄에는 춤의 각 동작에 대한 설명이 주어진다. 각 줄의 첫 번째 자연수는 해당 동작이 어떤 종류의 동작인지를 나타낸다. 해당 숫자가 1이라면, 다음에 정수 x 하나가 주어진다. 해당 숫자가 2라면 아무것도 주어지지 않는다. 즉, 각 동작은 “1 x” 또는 “2” 의 형태로 주어진다. (-N ≤ x ≤ N)

출력 형식

한 줄에 N개의 자연수를 출력한다. i번째 자연수는 춤이 모두 끝난 이후 i번 여자와 마주보고 있는 남자의 번호이다.

예제 입력 1

6 3
1 2
2
1 2

예제 출력 1

4 3 6 5 2 1

예제 입력 2

2 3
1 1
2
1 -2

예제 출력 2

1 2

예제 입력 3

4 2
2
1 3

예제 출력 3

1 4 3 2

Comments

There are no comments at the moment.