AT_pakencamp_2020_day2_f 来年も本選に20人送り込むので覚悟しておいてください
题目描述
在20XX年,信息学部的研究室获得了一种超能力:在室内解题时,部员的评分(rate)会变成两倍。然而,即使是拥有超自然现象的研究室,部员之间的评分差异依旧存在。某一天,研究室的部长对这一现象感到不满,决定将部员的评分进行公平的再分配。
计划执行的当天,有 $ N $ 名部员来到了研究室。第 $ i $ 个部员的评分是 $ A_i $,他在时刻 $ L_i $ 进入研究室,并在时刻 $ R_i $ 离开。不同部员不会在同一时刻同时进入或离开。
部长在部员进出研究室时,可以从部员的评分中减去一个任意的**整数**,并将其加到自己的评分中。操作时必须保证无论何时,部员和部长的评分都不能为负数。
具体的操作如下:
- 部员在进入研究室之前的评分是 $ A_i $。
- 进入研究室后,部长可以从部员的评分中减去 $ x $(满足 $ -E \leq x \leq A_i $),此时部长和部员的评分分别变为 $ E + x $ 和 $ A_i - x $。
- 在研究室内解题时,部员的评分会变成两倍。
- 离开研究室时,部长可以从部员的评分中再减去 $ y $(满足 $ -E' \leq y \leq A_i' $),此时部长和部员的评分分别变为 $ E' + y $ 和 $ A_i' - y $。这里 $ E' $ 和 $ A_i' $ 分别是部员离开时部长和部员的评分。
部长的评分 $ E $ 只会在部员进出时发生变化,其他时候保持不变。
你的任务是求出,所有操作结束后,部员评分的最小值的最大可能值。
输入格式
输入的第一行包含两个整数 $ N $ 和 $ E $。
第二行包含 $ N $ 个整数 $ A_1, A_2, \ldots, A_N $。
接下来的 $ N $ 行,每行包含两个整数 $ L_i $ 和 $ R_i $,表示第 $ i $ 个部员的进入和离开时间。
翻译by_[QWQ_rua_QWQ](https://www.luogu.com.cn/user/1233838)
输出格式
输出一个整数,表示部员评分的最小值的最大可能值。如果结果大于等于 $ 10^{12} $,则输出 `'inf'`。
#### 样例输入 #1
```
2 2
1 1
1 2
3 4
```
#### 样例输出 #1
```
4
```
#### 样例输入 #2
```
4 2
2 3 1 3
2 4
1 7
3 8
5 6
```
#### 样例输出 #2
```
7
```
#### 样例输入 #3
```
6 4098
8 6 9 1 2 1
1 3
5 9
4 11
8 12
2 10
6 7
```
#### 样例输出 #3
```
2532
```
说明/提示
###### 约束条件
- $ 1 \leq N \leq 10^5 $
- $ 1 \leq E \leq 10^9 $
- $ 1 \leq A_i \leq 10^9 $
- $ 1 \leq L_i < R_i \leq 2N $ (对于所有 $ 1 \leq i \leq N $)
- $ L_i $ 和 $ R_i $ 的值都是不同的。
###### 部分分数
- 小测试 1 (50分): $ 1 \leq N \leq 4, 1 \leq E \leq 3, 1 \leq A_i \leq 3 $
- 小测试 2 (200分): $ R_i $
- 小测试 3 (550分): 无其他额外约束
##### 样例解释 #1
在这个例子中,部长可以采取以下步骤:
- 时刻1:给部员1分配1个评分,部员1的评分变为2。
- 时刻2:部员1的评分变为4并离开。
- 时刻3:给部员2分配1个评分,部员2的评分变为2。
- 时刻4:部员2的评分变为4并离开。
部员的评分的最小值无法超过5,所以最终答案是4。此样例满足小测试1和2的约束条件。