‹ 上一题 下一题 ›

g5-08335. 位操作流 未做

1000 ms 256 MB 测试点 10 通过率 100% GESP-55级·STLbitset

题目描述

维护一个 bitset<1000>,初始时用整数 构造:bitset<1000> b(x);。它的 1000 个位按惯例从最低位数起:最低位是第 位(对应 b[0]),最高位是第 位(对应 b[999])。

依次处理 条操作:

  • 1 i:把第 位置成 1;
  • 2 i:把第 位置成 0;
  • 3 i:把第 位翻转(0 变 1,1 变 0);
  • 4 i:查询第 位的值。

输入格式

第一行两个整数 、(,)。

接下来 行,每行两个整数 op i(,),描述一条操作。数据保证至少有一条 4 操作。

输出格式

对每条 4 操作,按顺序各输出一行一个整数(0 或 1)。

样例

输入:

6 5
4 1
4 3
3 2
4 2
2 1
4 1

输出:

1
1
1
0

5 的二进制是 101,从最低位数第 1、3 位是 1;翻转第 2 位后变成 111;把第 1 位置 0 后变成 110,所以最后查询第 1 位得 0。

数据范围

,,。提示(方向感):从最低位数起的第 位是 b[i-1]——bitset 的下标 0 是最低位,也就是 to_string() 结果的最右一个字符,别顺着字符串从左往右数。

输入
输出

            
答案