Type: Default 1000ms 256MiB

debug

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目描述

小明需要调试一段有nn行代码,其中有mm行有bug(位置锁定为a1,a2,...,ama_1, a_2, ..., a_m,且1a1<a2<...<amn1 \le a_1 \lt a_2 < ... \lt a_m \le n)。每次调试可选择运行前ii行代码(从第11行顺序运行到第ii行),耗时ii秒,随后一次性修复这ii行中的所有现存bugbug,修复时间为这ii行中现存bugbug数量的四次方(x4x^4秒,xx为现存bugbug数)。修复后,这ii行中的bugbug将被彻底清除。求完成所有bugbug修复的最短总耗时。

输入格式

  • 第一行:两个整数nnmm1mn2×1051 \le m \le n \le 2×10^5)。
  • 第二行:mm个整数a1,a2,...,ama_1, a_2, ..., a_m(表示有bugbug的行号,按升序排列)。

输出格式

一行,一个整数,表示最短总耗时。

样例

输入

3 2  
1 3  

输出

6

样例2

输入

20 20  
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20  

输出

221

样例解释

对于第一个样例,先运行前1行(耗时1秒),修复1个bug(耗时1⁴=1秒);再运行前3行(耗时3秒),修复1个bug(耗时1⁴=1秒),总耗时1+1+3+1=6秒。

对于第二个样例,通过分阶段运行前1, 2, ..., 13, 14, 16, 18, 20行达到最优解。

数据分布

30% 30\% 的样例,1mn101 \le m \le n \le 101a1,a2,...,amn1 \le a_1, a_2, ..., a_m \le n

60% 60\% 的样例,1mn10001 \le m \le n \le 10001a1,a2,...,amn1 \le a_1, a_2, ..., a_m \le n

100% 100\% 的样例,1mn2×1051 \le m \le n \le 2×10^51a1,a2,...,amn1 \le a_1, a_2, ..., a_m \le n