| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 41788 | 王阡陌 | 【S】T2 | C++ | 输出超限 | 0 | 667 MS | 4944 KB | 750 | 2026-05-29 20:13:37 |
#include<bits/stdc++.h> using namespace std; long long a[300005],b[300005],n; bool check(long long mid) { long long i=1,j=1,cnt=0; while(i<=n&&j<=n) { if(a[i]+mid<=b[j]) { cnt++,i++,j++; } else { j++; } } cout<<mid<<' '<<cnt<<endl; for(i=cnt+1;i<=n;i++) { if(b[i]<a[i-cnt]+mid) return false; } return true; } int main() { long long t; cin>>t; while(t--) { cin>>n; for(long long i=1;i<=n;i++) cin>>a[i]; for(long long i=1;i<=n;i++) cin>>b[i]; sort(a+1,a+1+n); sort(b+1,b+1+n); long long l=0,r=1000000000,mid,ans; while(l<=r) { mid=(l+r)/2; if(check(mid)) { ans=mid; l=mid+1; } else r=mid-1; } cout<<ans<<endl; } return 0; }