| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 41934 | 22fhq | 【S】T2 | C++ | 通过 | 100 | 35 MS | 1528 KB | 750 | 2026-06-06 13:56:23 |
#include<bits/stdc++.h> #define int long long using namespace std; inline void read(int &x){ x=0;char c=getchar(); for(;!isdigit(c);c=getchar()); for(;isdigit(c);c=getchar())x=(x<<1)+(x<<3)+(c^48); } template<typename... T> inline void read(T &...x){ (read(x),...); } int n,a[200005]; bool chk(int x){ int mx=0,cnt=0; for(int i=1;i<=n;i++){ if(a[i]>mx)mx=a[i]+x+x,cnt++; } return cnt<=3; } void slv(){ read(n); for(int i=1;i<=n;i++)read(a[i]); sort(a+1,a+1+n); int l=0,r=1000000000,mid; while(l<r){ mid=(l+r>>1); if(chk(mid))r=mid; else l=mid+1; } cout<<r<<'\n'; } signed main(){ // int t;read(t);while(t--) slv(); }