#4495. 统计区间中的整数数目

    ID: 4495 传统题 1000ms 256MiB 尝试: 3 已通过: 2 难度: 10 上传者: 标签>高级数据结构线段树难度普及+/提高动态开点

统计区间中的整数数目

题目描述

给你区间的 空集,有以下操作方法:

  • 新增:添加一个区间 [left,right][left, right] 到这个区间集合中。
  • 统计:计算出现在 至少一个 区间中的整数个数。

注意:区间 [left,right][left, right] 表示满足 left<=x<=rightleft <= x <= right 的所有整数 xx

输入格式

第一行一个数表示操作的次数 nn

接下来 nn 行,每行第一个数为 opop, opop11 时,后面接两个数 start,endstart, end,表示方法 11,表示新增操作;为 22 时表示统计操作。

输出格式

对于 opop22 的每行输出一个数表示出现在 至少一个 区间中的整数个数。

样例

样例 1:

5
1 2 3
1 7 10
2
1 5 8
2
6
8

解释

将 [2, 3] 添加到区间集合中

将 [7, 10] 添加到区间集合中

返回 6

整数 2 和 3 出现在区间 [2, 3] 中

整数 7、8、9、10 出现在区间 [7, 10] 中

将 [5, 8] 添加到区间集合中

返回 8

整数 2 和 3 出现在区间 [2, 3] 中

整数 5 和 6 出现在区间 [5, 8] 中

整数 7 和 8 出现在区间 [5, 8] 和区间 [7, 10] 中

整数 9 和 10 出现在区间 [7, 10] 中

样例2

75
1 730 960
1 1000 1000
2
2
2
1 254 554
2
1 393 754
1 700 988
2
1 370 757
2
1 890 936
2
1 424 841
1 282 736
2
1 630 637
1 468 778
1 337 339
2
1 27 391
1 143 206
1 668 921
2
2
2
2
2
2
1 900 979
1 911 984
1 165 610
2
1 503 569
1 775 839
2
1 139 334
1 93 502
2
2
2
2
2
1 537 973
2
2
1 104 923
2
2
1 263 764
1 932 937
2
1 478 708
2
1 38 88
1 292 425
2
1 832 945
1 336 408
2
2
1 128 293
2
1 781 883
2
1 264 473
2
2
2
2
1 53 356
2
2
1 6 96
232
232
232
533
736
736
736
736
736
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963
963

提示:

  • 1leftright1091 \le left \le right \le 10^9
  • 1n1051 \le n \le 10^5
  • op2的计算方法至少有一次 op 为 2 的计算方法至少有一次
}