#P1505. 一维棋盘(chess)
一维棋盘(chess)
题目描述
小明是一名热爱下国际象棋的中学生。最近, 他迷上了一种新的下棋方式: 在一维棋盘上摆放棋子。
小明拥有一块长度为 的一维棋盘,棋盘上的位置从 到 编号。初始时, 棋盘上已经摆放了 枚棋子, 剩余的位置都是空的。小明希望将棋盘上所有空位都摆满棋子, 以展现出优美的棋局。
为了达成这个目标,小明可以进行以下两种操作:
- 直接在任意一个空位上摆放一枚新棋子,该操作需要花费 个金币。
- 利用已有棋子的位置关系来免费摆放新棋子。若存在两个已摆放棋子的位置 和 , 且它们的中点位置 恰好是空位, 同时位置 到位置 之间 (不包括 本身) 没有其他棋子, 则可以在位置 免费摆放一枚新棋子。
小明想知道,要将棋盘上的所有空位都摆满棋子, 最少需要花费多少金币? 你能帮助他计算出这个最小花费吗?
输入格式
第一行输入两个非负整数 。
第二行包括 个正整数,表示哪些位置已经被摆放了棋子。
输出格式
一行一个整数,表示最少的代价。
样例数据
10 2
2 5
4
大样例
数据范围
对于 的数据,。
对于 的数据,。
对于 的数据,。
对于 的数据,。
对于 的数据,。
其中对于额外的 的数据 。