-->
当前位置:首页 > 题库 > 正文内容

编程题:玻璃管中的小球

Luz3年前 (2022-06-09)题库877
有一根笔直的玻璃管和若干小球,初始时玻璃管内是空的,每个小球都有一个权值x,不同小球的权值可能相同。

玻璃管和小球支持以下三个操作:

从玻璃管的右端放入一个小球

从玻璃管的左端取出一个小球

翻转玻璃管:玻璃管原来的左端变为现在的右端,原来的右端变为现在的左端。

现在要开始进行以下操作。

### 输入格式:
第一行一个正整数q(1<=q<=400000),表示对玻璃管和小球的操作次数,初始时,玻璃管为空。

接下来q行,

若是 1 x,则将一个权值为x的小球从玻璃管右端放入玻璃管(1<=x<=1000000)。

若是 2,则从玻璃管左端取出一个小球(若当前玻璃管为空,则忽略此操作)

若是 3,则翻转玻璃管

### 输出格式:
对于每个输入输出一行一个整数,为玻璃管左端小球和玻璃管右端小球的权值的异或值(这里的异或是按位异或,运算符为 '^')。

若当前玻璃管为空,则输出-1

### 输入样例1:
in
5
1 2
1 3
3
2
2



### 输出样例1:
out
0
1
1
0
-1


### 输入样例2:
in
4
1 2
3
1 3
3


### 输出样例2:
out
0
0
1
1








答案:若无答案欢迎评论

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。