#include<bits/stdc++.h>
using namespace std;
// 木板最大的数目M ,牛棚的总数S 和 牛的总数C(用空格分开)
//木板覆盖len 至少为c 最大为第一个和最后一个牛的距离
// 做减法 减少多余的间隔 也就是将间隔排序,去掉M-1个最大的间隔长度就是答案
int m, s, c,i,ans;
int a[205];
int main(){
ios::sync_with_stdio("false");
cin >> m >> s >> c;
if(m>=c){
cout << c << endl;
return 0;
}
for ( i = 0; i < c;i++)
cin >> a[i];
sort(a, a + c);
ans = a[c - 1] - a[0]+1;
for ( i = 0; i < c-1;i++)
a[i] = a[i + 1] - a[i]-1;
sort(a, a + c-1,greater<int>());
for (i = 0; i < m - 1;i++)
ans -= a[i];
cout << ans << endl;
// system("pause");
return 0;
}
洛谷 p1209 修理牛棚 贪心
最新推荐文章于 2025-05-23 10:43:38 发布