#2941. 01序列
01序列
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
你有一个 位的二进制数。
我们将对其进行 次操作。每次操作,我们都会是以下三种操作之一:
:将这个数与上 (保证 )。
:将这个数或上 (保证 )。
:求从低往高第 位到第 位之间,每一位都相等的区间的最长长度(保证 )。
输入格式
第一行两个正整数 。
第二行一个长度为 的 串,表示这个二进制数。
接下来 行,每行三个整数,表示一次询问。
输出格式
对于每个 操作,输出一行一个整数表示最长相等区间的长度。
输入样例 1
8 5
10010111
3 3 7
1 3 1
3 1 5
2 7 3
3 3 8
输出样例 1
2
3
5
样例解释
操作后,这个数变成了10010001。
操作后,这个数变成了11111001。
数据范围
下表数据表示数据最大值。
Subtask | n | q | 特殊性质 | 分值 |
---|---|---|---|---|
1 | 63 | 无 | 10 | |
2 | 5000 | |||
3 | 10^5 | 不含操作1 | 15 | |
4 | 不含操作2 | |||
5 | 无 | 50 |