페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#4851

수열 1s 256MB

문제

초기에 비어있는 수열을 아래 네 가지 명령을 수행해나가며 관리한다.

 

1) 1 pos value

: insert

: pos = 0(수열 맨 앞에 value 추가)

      = 1(수열 맨 뒤에 value 추가)

 

2) 2 pos value

: erase

: pos = 0(앞에서부터 value 이상인 값을 최대 3개 지운다)

      = 1(뒤에서부터 value 이상인 값을 최대 3개 지운다)

 

3) 3 value

: sort

: value 기준, 가까운 순(|value-x|가 작은 순)으로 정렬한다.

: 가까운 정도가 같다면 작은 값이 우선이다.

 

3) 4 pos

: print

: 한줄에 공백으로 구분하여 수열의 모든 값을 출력한다.​

: pos = 0(앞에서부터 출력)

      = 1(뒤에서부터 출력)


입력

입력의 첫 줄에는 명령 수 q가 주어진다.

 

두번째 줄부터 q개 줄에 걸쳐 명령이 세개의 정수(cmd, pos, value)로 주어진다,

 

3 <= q <= 1,000

1 <= cmd <= 4

0 <= pos <= 1

0 <= value <= 1,000

 


예제

14

1 1 1
1 1 2
1 1 3
1 1 4
1 1 1
1 0 2
4 0
3 3
4 0
2 1 3
4 0
2 0 1
1 0 10
4 1
2 1 2 3 4 1

3 2 2 4 1 1
2 2 1 1
1 10

출처

teriusu

로그인해야 코드를 작성할 수 있어요.