简单题
提交数: 92, 通过率: 65.22%, 平均分: 79.13
题目描述:
有一个n个元素的数组,每个元素初始均为0。有m条指令,要么让其中一段连续序列数字反转——0变1,1变0(操作1),要么询问某个元素的值(操作2)。例如当n=20时,10条指令如下:
操作 |
回答 |
操作后的数组 |
1 1 10 |
N/A |
11111111110000000000 |
2 6 |
1 |
11111111110000000000 |
2 12 |
0 |
11111111110000000000 |
1 5 12 |
N/A |
11110000001100000000 |
2 6 |
0 |
11110000001100000000 |
2 15 |
0 |
11110000001100000000 |
1 6 16 |
N/A |
11110111110011110000 |
1 11 17 |
N/A |
11110111111100001000 |
2 12 |
1 |
11110111111100001000 |
2 6 |
1 |
11110111111100001000 |
输入格式:
输入文件easy.in第一行包含两个整数n,m,表示数组的长度和指令的条数,以下m行,每行的第一个数t表示操作的种类。若t=1,则接下来有两个数L, R (L<=R),表示区间[L, R]的每个数均反转;若t=2,则接下来只有一个数I,表示询问的下标。
输出格式:
每个操作2输出一行(非0即1),表示每次操作2的回答。
样例输入:
20 10 1 1 10 2 6 2 12 1 5 12 2 6 2 15 1 6 16 1 11 17 2 12 2 6
样例输出:
1 0 0 0 1 1
提示:
【限制】
50%的数据满足:1<=n<=1,000,1<=m<=10,000
100%的数据满足:1<=n<=100,000,1<=m<=500,000
时间限制: 1000ms空间限制: 128MB