소 줄 세우기

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

Farmer John의 소들이 한 줄로 서 있습니다. 줄은 처음에 비어 있고, 시간이 지나면서 소들이 한 마리씩 줄의 왼쪽 끝 또는 오른쪽 끝에 합류합니다. 또한 때때로 줄의 왼쪽 끝 또는 오른쪽 끝에 있는 $K$마리의 소가 한꺼번에 줄을 떠나 풀을 뜯으러 갑니다.

소들은 번호 순서대로($1, 2, 3, \dots$) 줄에 들어옵니다. 즉, 소가 합류할 때마다 아직 사용되지 않은 가장 작은 번호가 그 소에게 배정됩니다. 한 번 줄을 떠난 소는 다시 들어오지 않습니다.

총 $S$개의 연산이 주어집니다($1 \le S \le 100{,}000$). 각 연산은 다음 두 종류 중 하나입니다.

  • 소 한 마리가 줄의 왼쪽 끝 또는 오른쪽 끝에 합류한다.
  • 줄의 왼쪽 끝 또는 오른쪽 끝에서 $K$마리의 소가 떠난다.

입력은 수행할 수 없는 연산(예: 줄에 있는 소보다 많은 수의 소를 떠나보내는 연산)을 절대로 요구하지 않습니다.

모든 연산을 처리한 뒤, 줄에 남아 있는 소들의 번호를 왼쪽에서 오른쪽 순서로 출력하세요. 마지막 상태의 줄은 비어 있지 않음이 보장됩니다.

입력

  • 첫째 줄: 정수 $S$.
  • 둘째 줄부터 $S+1$째 줄까지: 각 줄에 하나의 연산이 다음 네 가지 형식 중 하나로 주어집니다.
    • A L — 소 한 마리가 줄의 왼쪽 끝에 합류한다.
    • A R — 소 한 마리가 줄의 오른쪽 끝에 합류한다.
    • D L K — 왼쪽 끝에서 $K$마리의 소가 떠난다.
    • D R K — 오른쪽 끝에서 $K$마리의 소가 떠난다.

출력

줄에 남아 있는 소들의 번호를 왼쪽에서 오른쪽 순서로, 한 줄에 한 번호씩 출력하세요.

힌트

아래 표는 10개의 연산으로 이루어진 예시에서 각 연산이 줄을 어떻게 변화시키는지 보여 줍니다.

연산연산 후 줄 (왼쪽 → 오른쪽)
A L1
A L2 1
A R2 1 3
A L4 2 1 3
D R 24 2
A R4 2 5
A R4 2 5 6
D L 12 5 6
A L7 2 5 6
A R7 2 5 6 8