编程题
### 问题描述 小蓝需要通过每个地区的通信装置才能与其他地区联系。现在每个地区被抽象为一个点,按照 $1,2,...,n$ 标号。在线路完好的情况下,小蓝可以从第一个点按顺序依次联系到第 $n$ 个点,即 $[1\leftrightarrow2\leftrightarrow...\leftrightarrow n]$。但是由于地震、暴雨等自然灾害的影响,可能部分点的通信装置被破坏。 例如当小蓝处在 $5$ 号点时,如果仅有 $3$ 号点被破坏,其他点正常,那么小蓝只能联络到 $[4,n]$ 号点,即 $[1\leftrightarrow2,4\leftrightarrow 5\leftrightarrow n]$。当某个地区的通信装置被自然灾害破坏时,工作人员也会尽力抢修。 现在给定 $q$ 次操作,每次操作为破坏点、恢复点和查询当前点可以联络多少个点(包括自身在内)进行通讯,请你输出对应的查询结果。 注意:初始状态时,所有通讯点均为正常通讯点。 ### 输入格式 输入共 $q+1$ 行: 第一行为两个正整数 $n,q$,依次表示通讯点数量和操作次数。 接下来 $q$ 行,每行两个正整数 $ins、x$。当 $ins == 0$ 时,若 点 $x$ 为正常通讯点,则破坏该点为中断点;若 $x$ 为中断点,则恢复该点为正常通讯点。当 $ins == 1$ 时,查询点 $x$ 可以至多通讯多少个点。 ### 输出格式 输出所有 $ins == 1$ 时的查询结果,结果按查询先后顺序依次输出,结果仅包含一个整数且独占一行。 ### 样例输入 ```text 5 5 1 1 0 2 1 1 1 4 1 2 ``` ### 样例输出 ```text 5 1 3 0 ``` ### 说明 初始时所有点均可通讯,因此对于第一次操作,查询点 $1$ 可以通讯的点数为 $5$。在第二次操作,我们破坏了点 $2$。因此在第三次查询点 $1$ 可以通讯的点时,它仅能与自身通讯,因此输出为 $1$。同理,第四次查询中点 $4$ 也因点 $2$ 被破坏,只能联系到点 $3、4、5$,因此输出为 $3$。被破坏的点 $2$ 无法通讯,因此输出为 $0$。 ### 评测数据规模 对于 $30$% 的评测数据,$1\leq n,q \leq 10^3$。 对于 $100$% 的评测数据,$1\leq n,q\leq 3\times 10^4,1 \leq ins \leq 2,1 \leq x \leq n$。
查看答案
赣ICP备20007335号-2