释放犯人
时间限制:1秒 内存限制:256M
【问题描述】
Caima王国中有一个奇怪的监狱,这个监狱一共有 \(N\) 个牢房,这些牢房一字排开,第 \(i\) 个紧挨着地第 \(i+1\) 个(除最后一个牢房外)。最初每个牢房有且仅有一个犯人。
上级下发了一个释放名单,要求每天释放名单上的一个人。这可把看守们难住了,因为看守们知道:如果连续 \(x\) 个牢房都有人的话,某一天他们这些人中的某个人被释放之后,那么以剩下这 \(x-1\) 个人都会很气愤,导致他们那一天会大吼大叫。搞得看守很头疼。如果给这些要发火的人吃上肉,他们就会安静点。
现在看守们想知道,如何安排释放犯人的顺序,才能使得他们花费的肉钱最少。
【输入格式】
第一行两个数 \(N\) 和 \(K\),\(K\) 表示释放名单上的人数;
第二行 \(K\) 个数,表示要释放哪些人。
【输出格式】
仅一行,表示最少要给多少人次送肉吃。
【输入输出样例】
Input
20 3
3 6 14
Output
35
【数据限制】
\(50\%\) 的数据:\(2<=N<=100, 2<=K<=5\)
\(100\%\) 的数据:\(1<=N<=1000;1<=K<=100\)。