Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
41754 stevenyu 【S】T2 C++ 解答错误 89 1144 MS 4940 KB 987 2026-05-29 19:31:16

Tests(28/30):


#include<bits/stdc++.h> using namespace std; #define int long long int t,n,a[300005],b[300005]; int check2(int mid,int mid1){ int ans=LLONG_MAX; for(int i=1;i<=mid1;i++)if(abs(b[i]-a[n-mid1+i])<mid)return false; return true; } int check3(int mid,int mid1){ int ans=LLONG_MAX; for(int i=mid1+1;i<=n;i++)if(abs(b[i]-a[i-mid1])<mid)return false; return true; } bool check(int mid){ int l=1,r=n; while(l<r){ int mid1=(l+r+1)>>1; if(check2(mid,mid1))l=mid1; else r=mid1-1; } return check3(mid,l); } signed main(){ cin>>t; while(t--){ cin>>n; for(int i=1;i<=n;i++)cin>>a[i]; for(int i=1;i<=n;i++)cin>>b[i]; sort(a+1,a+n+1); sort(b+1,b+n+1); int l=1,r=abs(a[n]-b[1]); while(l<r){ int mid=(l+r+1)>>1; if(check(mid))l=mid; else r=mid-1; } cout<<l<<endl; } return 0; }


测评信息: