0
已解决
蒋智航
高级天翼
高级天翼
#include<bits/stdc++.h>
using namespace std;
int N,M,x[200000];
bool C(int d)
{
int pre=1,cnt=1;
for (int i=2;i<=N;i++)
{
if (x[i]-x[pre]>=d)
{
pre=i;
cnt++;
if (cnt==M)
return true;
}
}
return false;
}
int main()
{
cin>>N>>M;
int l=1,r=x[N],mid;
for (int i=1;i<=N;i++)
cin>>x[i];
sort(x+1,x+N+1);
while (l<r)
{
mid=(l+r)/2+1;
if (C(mid))
l=mid;
else
r=mid-1;
}
cout<<l;
return 0;
}
我懒得自己想,手残抄微课上的
可是还是有BUG!
你们帮帮忙!
快期中考试了,加油考,好好复习,也同时预祝你们市赛考出好成绩!!!
今天14号,悬赏14×14=196(个)酷町豆 凑个整,200个!
加油!
市赛我在第十五考场,What about you?
蒋智航在2018-11-14 19:15:55追加了内容
哎呀,悬赏多了
¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿¿?????????????????????????????
蒋智航在2018-11-14 19:17:16追加了内容
正在召集回答:
你们想不想让我再加一些悬赏?
蒋智航在2018-11-14 19:18:15追加了内容
血本都抛出来了,你们还不回答?
1
已采纳
赵逸凡
初级启示者
初级启示者
定义问题,那个x数组的输入还没进行就定义......
那个数组的长度太大了,整整限制的2倍。
为了好习惯,建议代码缩进
赵逸凡在2018-11-14 19:53:13追加了内容
And那个cmp没写会被洛谷评测警告的
0
汪恺恒
中级启示者
中级启示者
l和r的赋值改一改
for(int i=2;i<=n;i++){
l=min(l,a[i]-a[i-1]);
}
int r=a[n]-a[1];
0
0
0
0