#include #include #include #include #include using namespace std; typedef long long ll; int main() { int n, m, K; cin >> n >> m >> K; vector desired(n); vector apartment_size(m); for(int i = 0; i < n; i++) { cin >> desired[i]; } for(int i = 0; i < m; i++) { cin >> apartment_size[i]; } sort(desired.begin(), desired.end()); sort(apartment_size.begin(), apartment_size.end()); queue A, B; for(int i = 0; i < n; i++) { A.push(desired[i]); } for(int i = 0; i < m; i++) { B.push(apartment_size[i]); } int res = 0; while(!A.empty() and !B.empty()) { int a = A.front(); int b = B.front(); if(abs(a - b) <= K) { res++; A.pop(); B.pop(); } else if(a < b) { A.pop(); } else { B.pop(); } } cout << res << endl; return 0; }