/*
ID: ScriptCoder
PROG: barn1
LANG: C++
*/
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int M,S,C,ans;
cin>>M>>S>>C;
vector<int> barns(S);
for(int i=0; i<C; ++i) {
int temp;
cin>>temp;
barns[temp-1]=1;
}
vector<int> v;
int cur=barns[0], num=1, min=S, max=-1;
for(int i=1; i<S; ++i) {
if(barns[i]!=cur) {
if(cur==0) {
v.push_back(num);
cur=1;
num=1;
} else {
cur=0;
num=1;
}
} else {
++num;
}
if(barns[i]==1) {
min= (i<min ? i : min);
max= (i>max ? i : max);
}
}
sort(v.begin(), v.end());
ans=max-min+1;
for(int i=M-1, j=v.size()-1; i>0 && j>=0; --i, --j) {
ans-=v[j];
}
cout<<ans<<'\n';
}
LyoKSUQ6IFNjcmlwdENvZGVyClBST0c6IGJhcm4xCkxBTkc6IEMrKwoqLwojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDx2ZWN0b3I+CiNpbmNsdWRlIDxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCBNLFMsQyxhbnM7CgljaW4+Pk0+PlM+PkM7CgkKCXZlY3RvcjxpbnQ+IGJhcm5zKFMpOwoJZm9yKGludCBpPTA7IGk8QzsgKytpKSB7CgkJaW50IHRlbXA7CgkJY2luPj50ZW1wOwoJCWJhcm5zW3RlbXAtMV09MTsKCX0KCQoJdmVjdG9yPGludD4gdjsKCWludCBjdXI9YmFybnNbMF0sIG51bT0xLCBtaW49UywgbWF4PS0xOwoJZm9yKGludCBpPTE7IGk8UzsgKytpKSB7CgkJaWYoYmFybnNbaV0hPWN1cikgewoJCQlpZihjdXI9PTApIHsKCQkJCXYucHVzaF9iYWNrKG51bSk7CgkJCQljdXI9MTsKCQkJCW51bT0xOwoJCQl9IGVsc2UgewoJCQkJY3VyPTA7CgkJCQludW09MTsKCQkJfQoJCX0gZWxzZSB7CgkJCSsrbnVtOwoJCX0KCQlpZihiYXJuc1tpXT09MSkgewoJCQltaW49IChpPG1pbiA/IGkgOiBtaW4pOwoJCQltYXg9IChpPm1heCA/IGkgOiBtYXgpOwoJCX0KCX0KCQoJc29ydCh2LmJlZ2luKCksIHYuZW5kKCkpOwoJYW5zPW1heC1taW4rMTsKCWZvcihpbnQgaT1NLTEsIGo9di5zaXplKCktMTsgaT4wICYmIGo+PTA7IC0taSwgLS1qKSB7CgkJYW5zLT12W2pdOwoJfQoJY291dDw8YW5zPDwnXG4nOwp9