AT_abc421_g [ABC421G] Increase to make it Increasing
题目描述
给定长度为 $N$ 的整数序列 $A=(A_1,A_2,\ldots,A_N)$,同时给出 $M$ 个整数对 $(L_1, R_1), (L_2, R_2), \dots, (L_M, R_M)$,其中满足 $1 \leq L_i \leq R_i \leq N$。
你可以对序列 $A$ 进行如下操作任意次(可能为 $0$ 次):
- 选择一个整数 $i$,其中 $1 \leq i \leq M$,然后将每个 $A_{L_i}, A_{L_i+1},\dots, A_{R_i}$ 的值加 $1$。
请判断是否可以通过若干次操作使得 $A$ 非递减。如果可以,请输出所需操作次数的最小值;如果不可能,则输出 $-1$。
输入格式
输入按以下格式给出:
> $N$ $M$
> $A_1$ $A_2$ $\dots$ $A_N$
> $L_1$ $R_1$
> $L_2$ $R_2$
> $\vdots$
> $L_M$ $R_M$
输出格式
如果可以将 $A$ 变为非递减序列,输出所需最小操作次数,否则输出 $-1$。
说明/提示
### 样例解释 1
例如,按以下顺序执行四次操作,可以使 $A$ 变为非递减:
- 选择 $i=1$,执行一次操作。$A$ 变为 $(4,3,3,2)$。
- 选择 $i=3$,执行一次操作。$A$ 变为 $(4,3,3,3)$。
- 选择 $i=3$,执行一次操作。$A$ 变为 $(4,3,3,4)$。
- 选择 $i=2$,执行一次操作。$A$ 变为 $(4,4,4,4)$。
相反,无法用三次及以下操作使 $A$ 非递减。因此输出 $4$。
### 样例解释 2
无论如何操作,也无法使 $A$ 成为非递减序列。
### 样例解释 3
$A$ 已经是非递减序列,不需要进行任何操作。
### 数据范围
- $1 \leq N \leq 300$
- $1 \leq M \leq 300$
- $1 \leq A_i \leq 300$
- $1 \leq L_i \leq R_i \leq N$
- 所有输入数据均为整数。
由 ChatGPT 5 翻译