#P1698. 移动小车

移动小车

题目描述

有编号 11nnnn 台小车在数轴上,第 ii 台小车的位置是 XiX_i ,当小车被主动激活后,它可以往正方向移动 DiD_i 距离,所有小车被激活移动完之后都从数轴上消失。当一辆小车在它行进的范围 [Xi,Xi+Di)[X_i,X_i+D_i) 中碰到另一辆小车,那么那辆小车也会被激活移动,以此类推。

现在你可以对还在数轴上的小车做任意次激活操作,问最后剩下小车数量的不同情况的数量,答案有可能很大,所以最后的结果对 998244353998244353 取模。

输入格式

第一行一个正整数 nn 表示小车的数量。

接下来 nn 行,每行输入两个整数 Xi,DiX_i,D_i ,表示第 ii 辆小车的初始位置和可以移动的距离。

输出格式

输出做任意次激活操作后剩下小车数量的不同情况的数量,答案对 998244353998244353 取模。

样例

样例输入 #1

2
1 5
3 3

样例输出 #1

3

有三种可能: {1,2},{1},{}\{1,2\},\{1\},\{\}

样例输入 #2

3
6 5
-1 10
3 3

样例输出 #2

5

有五种可能: {1,2,3},{1,2},{2,3},{2},{}\{1,2,3\},\{1,2\},\{2,3\},\{2\},\{\}

样例输入 #3

4
7 10
-10 3
4 3
-4 3

样例输出 #3

16

四个小车相互都不会被影响到。

样例输入 #4

20
-8 1
26 4
0 5
9 1
19 4
22 20
28 27
11 8
-3 20
-25 17
10 4
-18 27
24 28
-11 19
2 27
-2 18
-1 12
-24 29
31 29
29 7

样例输出 #4

110

提示

对于100%100\%的数据:

  • 1n2×1051 \le n \le 2 \times 10^5
  • 109Xi109-10^9 \le X_i \le 10^9
  • 1Di1091 \le D_i \le 10^9
  • XiXj(ij)X_i \neq X_j(i \neq j)
  • 所有的数据都是整数