rt,1≤m,n,T≤1000,主要是为什么会超时。
#include<bits/stdc++.h>
#define int long long
using namespace std;
void read(int &x){
x=0;bool f=0;char ch=getchar();
while(ch>'9'||ch<'0'){
if(ch=='-')f=1;
ch=getchar();
}do{x=(x<<3)+(x<<1)+(ch^48);ch=getchar();}while(ch>='0'&&ch<='9');
x=f?-x:x;
}
int T,n,a[1001],b[1001],m,sum;
signed main(){
read(m),read(n),read(T);
for(int i=0;i<m;i++)read(a[i]);
for(int i=0;i<n;i++)read(b[i]);
sort(a,a+m),sort(b,b+n);
for(int i=0,j=0;i<m&&j<n;){
if(abs(a[i]-b[j])<=T){
if(abs(a[i]-b[j+1])<=T)j++;
else if(abs(a[i+1]-b[j])<=T)i++;
else i++,j++;
}else sum++,i++,j++;
}printf("%d",sum);
return 0;
}