#P17171. 数轴上的染色翻转怎么还有恢复与加密
数轴上的染色翻转怎么还有恢复与加密
1011. 数轴上的染色翻转怎么还有恢复与加密
题目描述
数轴上的每个整点只有黑色和白色两种状态。初始时,只有整点 是黑色,其余整点均为白色。
依次执行 次操作,操作分为以下五种:
- 给定整数 ,将整点 染成黑色。
- 给定非负整数 ,同时将所有与某个黑色整点距离不超过 的整点染成黑色。即整点 在操作后为黑色,当且仅当操作前存在黑色整点 满足 。
- 给定整数 ,其中 ,翻转区间 。对于每个 ,操作后整点 的颜色等于操作前整点 的颜色;区间外整点的颜色不变。
- 给定整数 ,将所有整点恢复为第 次操作执行后的状态。若 ,则恢复到初始状态。
- 给定整数 ,询问整点 是否为黑色。
输入经过在线加密。设此前所有询问中输出 Yes 的次数为 。对于每次操作,除操作编号外,输入中的所有整数都需要先与 进行按位异或,才能得到真实参数。
输入格式
第一行输入一个整数 ,表示测试数据组数。
对于每组测试数据:
第一行输入一个整数 ,表示操作数量。
接下来 行,每行表示一次操作:
1 x:将整点 染成黑色;2 x:扩张所有黑色区域;3 l r:翻转区间 ;4 x:恢复到第 次操作后的状态;5 x:询问整点 的颜色。
每组测试数据开始时,Yes 的数量重新置为 。
将输入参数解密后,对于一组测试数据:
;
操作 和操作 满足 ;
操作 满足 ;
操作 满足 且 ;
操作 满足 ,其中 是当前操作编号。
OJ 中只有一个正式测试点,该测试点满足:
;
。
输出格式
对于每个操作 输出一行。
如果询问的整点是黑色,输出 Yes;否则输出 No。
样例输入
3
5
5 0
1 4
5 4
4 2
5 7
5
1 -2
2 1
5 -3
3 -4 2
5 2
3
5 1
1 1
5 1
样例输出
Yes
Yes
No
Yes
Yes
No
Yes
来源:2026杭电多校-测试专用(肖岱恩) 原题链接:http://acm.hdu.edu.cn/contest/problem_show.php?cid=1236&pid=1011