#include<bits/stdc++.h>
using namespace std;
long long a[1000050];
long long l,n,k;
bool check(long long s)
{
long long ans=0,cnt=0;
for(int i=1;i<=n;i++)
{
if(a[i]-ans<=s)
{
ans=a[i];
cnt++;
}
else
{
ans+=s;
}
}
return cnt>=k;
}
int main()
{
scanf("%lld%lld%lld",&l,&n,&k);
for(int i=1;i<=n;i++)
{
scanf("%lld",&a[i]);
}
long long left=1,right=l;
while(left<right)
{
long long mid=(left+right)/2;
if(!check(mid)) left=mid+1;
else right=mid;
}
if(check(left)) printf("%lld\n",left);
return 0;
}
样例错了