提交时间:2026-06-06 13:56:23

运行 ID: 41934

#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(); }