P9180 [COCI 2022/2023 #5] Slastičarnica

题目描述

有一列数 $a_1,\ldots,a_n$ 和 $q$ 次操作,每次操作形如「删掉长为 $d_i$ 的前缀或后缀,且需要保证这个前缀和后缀中所有元素都大于等于 $s_i$。」每次操作前,你可以选择长度任意的前缀或后缀(可以为空,且两端可同时选择),并删除它。如果某次操作无法进行,则停止这次和之后的所有操作。问最多可以进行多少次操作。

输入格式

第一行两个正整数 $n,q\ (1\le n\le 5\ 000,1\le q\le 2\cdot 10^5)$,表示序列长度和操作次数。 第二行 $n$ 个正整数 $a_i\ (1\le a_i\le 10^9)$,表示这个数列。 接下来 $q$ 行,每行两个整数 $d_i,s_i\ (1\le d_i\le n,1\le s_i\le 10^9)$,表示一次操作。

输出格式

输出一行一个整数,表示最多能进行多少次操作。

说明/提示

样例 $3$ 解释: 首先删除前缀 $(1)$,之后进行第一次操作,删除前缀 $(3,2,5)$。此时序列变为 $(1,4,6,2,1)$。 然后删除前缀 $(1)$,之后进行第二次操作,删除前缀 $(4,6)$,此时序列变为 $(2,1)$。 然后不删除任何前缀或后缀,之后进行第三次操作,删除后缀 $(1)$,此时序列变为 $(2)$。 然后不删除任何前缀或后缀,之后进行第四次操作,删除唯一剩余的 $(2)$,此时序列变为空序列。 最后一次操作由于序列为空无法完成,操作停止。 因此一共进行了四次操作。 |子任务编号| 附加限制| 分值| |:-:|:-:|:-:| |$0$| 是样例| $0$| |$1$| $n,q\le 100$| $19$| |$2$| $d_1=d_2=\ldots=d_q=1$| $28$| |$3$| 无附加限制| $53$|