#1433. [L2-2] 音游

内存限制:512 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: luoshuitianyi

题目描述

xx 正在玩一款音游。这款音游有 nn 个 “音符” 按照一定的顺序依次出现。对于每一个 “音符”,小 xx 对它进行 “判定”,结果要么是 “成功判定”,要么是 “失败判定”。我们称一段连续的 “判定” 是 “连续成功判定” 的,当且仅当这段连续的 “音符” 起始于 “失败判定” 的后一个 “音符”,或者起始于第一个 “音符”;终止于 “失败判定” 的前一个 “音符”,或者终止于最后一个 “音符”;并且在这个连续的 “音符” 中没有 “失败判定”。

这款音游的计分规则也很独特,它有 “基础得分”:对于第 ii 个“音符”,若小 xx “成功判定”,则将会获得 aia_i 分;若 “失败判定”,不得分。

但同时,它还有 mm 条 “特殊规则”,其中第 jj 条 “特殊规则” 是:对于每一段的 “连续成功判定”,若它的长度至少ljl_j,则小 xx 将会获得 vjv_j 的额外分数(对于 j1j2\forall j_1\not= j_2,不一定有 lj1lj2l_{j_1}\not= l_{j_2},即不同的 “特殊规则” 可能会要求相同的 ljl_j)。

显然由于特殊规则的存在,Full Combo(所有 “音符” 均为 “成功判定”)不一定会为你带来最高的分数。所以小 xx 想问你他最多能获得多少分。

输入格式

第一行两个正整数 n,mn,m

接下来一行 nn 个正整数 aia_i,表示 nn 个 “音符” 按照一定的顺序出现,它们所对应的 “基础得分”。

接下来 mm 行每行两个正整数 lj,vjl_j, v_j,表示特殊规则:对于每一段的 “连续成功判定”,若 “连续成功判定” 的长度至少为 ljl_j,则将会获得 vjv_j 的额外分数。

输出格式

一行一个正整数代表答案,即最多能获得的分数。

样例

样例输入

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

样例输出

48

样例解释

对于第 1,2,4,5,61,2,4,5,6 个 “音符”,它们 “成功判定”;对于第 33 个 “音符”,它 “失败判定”。

“基础得分” 为:2+7+8+2+8=272+7+8+2+8=27;因为有一个长度 22 的、一个长度为 33 的 “连续成功判定”,触发了两次 lj=2l_j=2 的 “特殊规则”,一次 lj=3l_j=3 的 “特殊规则”,所以 “特殊规则” 得分为 10+10+1=2110+10+1=21;总得分:27+21=4827+21=48

可以证明,这样得分是最高的。

数据范围与提示

对于前 30%30\% 的数据,n15n\le15

对于另外 20%20\% 的数据,lj=1l_j=1

对于另外 30%30\% 的数据,ai=0a_i=0

对于所有数据,1mn5000,0ai,vi109,1lin1\le m\le n\le 5000,0\le a_i,v_i\le 10^9,1\le l_i\le n