这题wa好几发一是没考虑牛棚不按顺序排二是没考虑到木板的数目很多
/*
ID:jinbo wu
LANG:C++
PROG: barn1
*/
#include<bits/stdc++.h>
using namespace std;
//struct node
//{
// int num,v;
// bool operator <(const node &a) const
// {
// return v<a.v;
// }
//};
int a[205];
priority_queue<int>q;
int main()
{
freopen("barn1.in","r",stdin);
freopen("barn1.out","w",stdout);
int n,m,k;
scanf("%d %d %d",&n,&m,&k);
for(int i=0;i<k;i++)
scanf("%d",&a[i]);
sort(a,a+k);
for(int i=1;i<k;i++)
{
q.push((a[i]-a[i-1])-1);
}
int sum=a[k-1]-a[0]+1;
for(int i=1;i<min(n,k);i++)
{
sum-=q.top();
q.pop();
}
printf("%d\n",sum);
}