Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
127997 林扬泉 上古神器 C++ 通过 100 17 MS 644 KB 665 2024-01-25 11:20:59

Tests(10/10):


#include<bits/stdc++.h> using namespace std; const int N=1e6+10; int A[N]; int n,c,a; bool check(int x){ int num=0; int l=A[1]; for(int i=2;i<=n;i++){ if(A[i]-l<x){ num++; } else{ l=A[i]; } if(num>a){ return false; } } return true; } int main(){ scanf("%d%d",&n,&c); for(int i=1;i<=n;i++){ scanf("%d",&A[i]); } sort(A+1,A+n+1); a=n-c; int l=1; int r=A[n]-A[1]; while(l+1<r){ int mid=(l+r)/2; if(check(mid)){ l=mid; } else{ r=mid; } } if(check(r)){ printf("%d\n",r); } else{ printf("%d\n",l); } return 0; }


测评信息: