#P1805. 列车调度

列车调度

题目描述

某列车调度站的铁道联接结构如图所示。

其中,AA 为入口,BB 为出口,SS 为中转盲端。所有铁道均为单轨单向式:列车行驶的方向只能是从 AASS,再从 SSBB;另外,不允许超车。因为车厢可在 SS 中驻留,所以它们从 BB 端驶出的次序,可能与从 AA 端驶入的次序不同。不过 SS 的容量有限,同时驻留的车厢不得超过 mm 节。

设某列车由编号依次为 {1,2,...,n}\{1, 2, ..., n\}nn 节车厢组成。调度员希望知道,按照以上交通规则,这些车厢能否以 {a1,a2,...,an}\{a_1, a_2, ..., a_n\} 的次序,重新排列后从 BB 端驶出。如果可行,应该以怎样的次序操作?

输入格式

第一行为两个整数 nnmm1n1,600,0001 \le n \le 1,600,0000m1,600,0000 \le m \le 1,600,000

第二行为以空格分隔的 nn 个整数,保证为 {1,2,...,n}\{1, 2, ..., n\} 的一个排列,表示待判断可行性的驶出序列 {a1,a2,...,an}\{a_1,a_2,...,a_n\}

输出格式

若驶出序列可行,则输出操作序列,其中 push 表示车厢从 AA 进入 SSpop 表示车厢从 SS 进入 BB,每个操作占一行。

若不可行,则输出 No

5 2
1 2 3 5 4
push
pop
push
pop
push
pop
push
push
pop
pop
5 5
3 1 2 4 5
No