节奏游戏在今年十月似乎迎来了一次复兴,不仅有新的《摇滚乐队》(Rock Band),还有《吉他英雄》(Guitar Hero)游戏推出。Björn 正在准备在《吉他英雄 Live》中取得高分,但他需要你的帮助来计算所有新歌曲的最高得分。显然,这款新游戏有一个叫做“英雄能量”(Hero Power)的东西,但 Björn 打赌它其实和这些游戏中一直存在的“星力”(Star Power,简称 SP)是一回事。
Photo by friskytuna, cc-by-sa
《吉他英雄》的计分方式基本如下:玩家沿着音符轨道前进,每击中一个音符得一分。Björn 对完美表现有着执着的追求;每一个音符都必须被击中!
然而,这里有一个额外的变数:“星力!”——简称为 SP。音符轨道上偶尔会出现一串星形音符。这些连串的音符被称为 SP 乐句(SP phrases)。在 SP 乐句的第一个音符和最后一个音符之间,玩家有能力积攒所谓的 SP 能量槽,它存储了玩家用于积攒能量的时间。你可以从第一个音符的瞬间开始积攒,一直到最后一个音符。你也可以随时暂停积攒,并且不需要在停止积攒后立即使用积攒的 SP,因此可以从多个乐句中累积 SP 能量。
当 SP 能量槽中包含正数秒的能量时,在歌曲的任何时刻——甚至是在击中音符的瞬间——玩家都可以自由激活星力。从这一刻起,SP 能量槽开始消耗,直到完全耗尽。例如,如果它包含 $\pi + \sqrt{7}$ 秒的 SP,则需要 $\pi + \sqrt{7}$ 秒才能完全耗尽。在激活期间,只要 SP 能量槽非空,每个音符的得分都是两分!特别地,如果你在击中音符的瞬间开始激活,该音符就已经值两分;如果你在激活的最后一刻击中音符,该音符只值一分,因为此时 SP 能量槽刚刚耗尽。
激活星力有一个负面影响。如果一次 SP 激活与一个 SP 乐句重叠,且在重叠期间的任何时刻 SP 能量槽中的能量为正,那么该 SP 乐句就会退化为普通音符。特别地,如果你在 SP 能量槽刚好耗尽到 $0$ 的瞬间击中 SP 乐句的第一个音符,该 SP 乐句不会退化。在乐句中间激活是可以的,但乐句的其余部分仍然会受到重叠的影响并消失,因此你无法从该乐句中积攒更多的星力。
你能帮助 Björn 找到最佳策略并计算出他能获得多少分吗?
输入格式
输入的第一行包含两个整数 $1 \le n \le 50\,000$ 和 $0 \le p \le 100$,分别表示音符的数量和 SP 乐句的数量。第二行是一个严格递增的 $n$ 个整数序列 $0 \le t_i \le 50\,000\,000$,表示所有音符的位置(以毫秒为单位)。接下来 $p$ 行,每行包含两个整数 $0 \le s_i < e_i \le 50\,000\,000$,表示第 $i$ 个星力乐句的起始和结束位置。
保证每个 SP 乐句的起始和结束位置上都存在音符。SP 乐句之间互不重叠,且按升序给出。
输出格式
输出最高得分,为一个整数。
样例
输入格式 1
3 1 0 10 20 0 10
输出格式 1
4
输入格式 2
6 1 0 10 20 26 40 50 0 40
输出格式 2
9
输入格式 3
10 2 0 10 20 30 40 50 60 70 80 90 0 40 70 80
输出格式 3
14