Help!
[C++] 纯文本查看 复制代码 #include<bits/stdc++.h>
using namespace std;
int cmp(int x,int y)
{
return x<y;
}
int l,n,m,a[50001],li,r,b[50001],mid,cnt=0;
int main()
{
scanf("%d %d %d",&l,&n,&m);
for(int i=1;i<=n;i++)
{
cin>>a[i];
b[i+1]=abs(a[i+1]-a[i]);
}
b[1]=a[1];
b[n]=l-a[n];
sort(b,b+n,cmp);
r=l;
li=b[1];
for(int i=1;i<=n;i++)
{
mid=(li+r)/2;
if(mid>b[i])
{
cnt++;
}
if(cnt>m)
{
r=mid-1;
}
else
{
if(cnt<m)
{
li=mid-1;
}
}
}
cout<<li;
}
|