在这题你需要维护一个支持异或变换操作的双端队列。
我们定义队列中第个元素为,队首位置为,队尾位置为。你将读取并执行以下六种操作:
: 在队首插入整数,换句话说,队列将变成
: 输出并弹出队首,换句话说,你需要输出,然后将队列置为。保证。
: 在队尾插入整数,换句话说,队列将变成
: 输出并弹出队尾,换句话说,你需要输出,然后将队列置为。保证。
: 输出,保证。
: 对队列进行异或变换。异或变换定义为,设原队列为,变换后队列为,则。其中,为异或运算,保证对于输入的,变换后的序列也是合法的,即。
第一行一个正整数 ,为操作次数。
下面 行,每行有若干个整数,含义如题意所述。
对于所有操作,保证。
对于每一个操作2、4和5,输出答案。
12 6 6 1 2 3 1 1 3 3 4 5 2 6 2 5 2 2 4 6 1 5 0
1 3 1 2 3
每轮操作完毕的队列情况:
: