为啥样例都没通过,看了题解感觉写的一样啊
查看原帖
为啥样例都没通过,看了题解感觉写的一样啊
388976
答客2930楼主2021/6/28 17:03
#include<stdio.h>
int d,n,m,a[60000];
int l,r,mid,ans;
int judge(int x)
{
    int num=0,now=0;
    for(int i=1;i<=n+1;i++)
    {
        if(a[i]-a[now]<x)
        num++;
        else
        now=i;
    }
    if(num>m)
    return 0;
    else
    return 1;
}

int main()
{
    l=1;
    scanf("%d%d%d",&d,&n,&m);
    r=d;
    for(int i=1;i<=n;i++)
        scanf("%d",&a[i]);
    printf("qwq");
    a[n+1]=d;
    while(l<=r)
    {
        mid=(l+d)/2;
        if(judge(mid))
        {
            ans=mid;
            l=mid+1;
        }
        else
        r=mid-1;
    }
    printf("%d",ans);
    return 0;
}
2021/6/28 17:03
加载中...