CSES - Shared codeLink to this code:
https://cses.fi/paste/69fd1810b6927c73164517/
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define SPEED ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)
#define loop(i,j,n) for(ll i=j;i<n;i++)
int main()
{
SPEED;
ll n,m,k;
cin>>n>>m>>k;
ll arr1[n],arr2[m];
loop(i,0,n)
{
cin>>arr1[i];
}
loop(i,0,m)
{
cin>>arr2[i];
}
sort(arr1,arr1+n);
sort(arr2,arr2+n);
int counter=0;
int i=0,j=0;
while(i<n&&j<m)
{
if(arr1[i]>=arr2[j]-k&&arr1[i]<=arr2[j]+k)
{
counter++;
i++;
j++;
}else if(arr1[i]>=arr2[j]+k)
{
j++;
}else{
i++;
}
}
cout<<counter;
}