#ABC217D. 切割木材

切割木材

切割木材

题目描述

有一根长度为 LL 米的木材。

对于每个 x=1,2,,L1x=1,2,\dots,L-1,在距离木材左端 xx 米处有一个名为 Mark xx 的标记。

给定 QQ 个查询,第 ii 个查询由一对数 (ci,xi)(c_i,x_i) 表示。

ii 的升序处理查询,处理方式如下。

如果 ci=1c_i=1:在 Mark xix_i 处把木材切成两段。

如果 ci=2c_i=2:选择包含 Mark xix_i 的那段木材,输出它的长度。

这里,对于两种查询 ci=1,2c_i=1,2,都保证在处理该查询时,Mark xix_i 处还没有被切割过。

输入格式

输入按以下格式从标准输入给出:

LL QQ
c1c_1 x1x_1
c2c_2 x2x_2
\vdots
cQc_Q xQx_Q

输出格式

输出的行数等于 ci=2c_i=2 的查询个数。 在第 jj 行输出第 jj 个此类查询的答案。

样例

5 3
2 2
1 3
2 2
5
3

处理第一个查询时还没有切割,包含 Mark 22 的木材长度为 55 米,因此输出 55

第二个查询把木材切成两段,长度分别为 33 米和 22 米。

处理第三个查询时,包含 Mark 22 的木材长度为 33 米,因此输出 33

5 3
1 2
1 4
2 3
2
100 10
1 31
2 41
1 59
2 26
1 53
2 58
1 97
2 93
1 23
2 84
69
31
6
38
38

数据范围

  • 1L1091 \le L \le 10^9
  • 1Q2×1051 \le Q \le 2 \times 10^5
  • ci=1,2c_i=1,2 (1iQ)(1 \le i \le Q)
  • 1xiL11 \le x_i \le L-1 (1iQ)(1 \le i \le Q)
  • 对于每个 ii (1iQ)(1 \le i \le Q),不存在 jj 使得 1j<i1 \le j \lt i(cj,xj)=(1,xi)(c_j,x_j)=(1,x_i)
  • 输入中的所有值均为整数。
难度 普及+/提高-
通过率
尝试 0
已通过 0
ID
2680
类型
传统题
Time Limit
2000ms
Memory Limit
1024MiB
上传者
标签