#P4940. Portal 2

Portal 2

题目背景

某地 ENLIGHTENED 的“XM 研究所”正在研究 Portal 的处理法则,想要揭示“XM 能量”的来源以及应用“XM 能量”。ENLIGHTENED 的首席科学家 Jacks 发现其能量的运算法则以及运算方法,但是方法十分复杂,仅靠人手工计算是很难算出答案的,所以它需要你协助他完成计算。

题目描述

Portal 计算“XM 能量”是通过个 22 个栈(00 号栈、11 号栈)实现的,它把对“XM 能量”的操作如下:

  • PUSH X NUM:把 NUMNUM 加入到 XX 号栈的栈顶。

  • POP X:把 XX 号栈的栈顶元素删除

  • ADD X取出 00 号栈和 11 号栈的元素各一个,并且把它的和放入 XX 号栈。

  • SUB X取出 00 号栈和 11 号栈的元素各一个,并且把它的差的绝对值放入 XX 号栈。

  • DEL X清空 XX 号栈中所有元素不管栈是否为空。

  • MOVE X Y:循环操作直到 YY 号栈为空,把 YY 号栈的栈顶元素加入到 XX 号栈,删除 YY 号栈的栈顶元素(数据保证 XXYY 不相同)。

  • SWAP:将两个栈的所有元素调换。

  • END:代表命令结束,并且分两行分别输出 00 号栈和 11 号栈由栈顶到栈底的元素的值,若栈内无元素,输出 NONE。数据保证指令以 END 结束且仅有一个 END,并且也需要输出 SUCCESS

  • AKNOI 等为无效操作,无效操作后不接数字更正不会有类似无效操作

对于每一行指令,若当前指令成功执行输出 SUCCESS,若取出删除元素时栈内为空或者没有对应指令输出 UNSUCCESS 并且不执行该行指令。

输入格式

输入若干行指令,以 END 指令结束。

输出格式

对于每一次操作,都要对应输出 SUCCESS 或者 UNSUCCESS,对于 END 根据指令描述输出栈内元素。

PUSH 0 10
PUSH 0 20
PUSH 0 30
PUSH 0 40
PUSH 1 50
PUSH 1 60
ADD 0
ADD 0
ADD 0
END
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
UNSUCCESS
SUCCESS
150 30 20 10
NONE
PUSH 0 10
PUSH 0 20
PUSH 0 30
PUSH 0 40
PUSH 1 50
PUSH 1 60
MOVE 0 1
END
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
50 60 40 30 20 10
NONE

提示

设命令总数为 nn

对于 20%20\% 的数据,数据保证不会出现 MOVE,SWAP 操作,1n1001\le n \leq 100

对于 40%40\% 的数据,1n10001\le n \leq 1000

对于 60%60\% 的数据,数据保证 MOVE,SWAP 的操作次数不会超过 1000010000 次,1n1051\leq n \leq 10^5

对于 100%100\% 的数据,0X,Y1,1n1060 \leq X,Y \leq 1,1\leq n \leq 10^6

数据保证无论任何情况,栈中元素的值 XX 满足 0X26310 \leq X \leq 2^{63}-1

题目创意来源 OIERBBS