#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int solve(const vector& a, const vector& b) { int n = a.size(); int m = b.size(); int i = 0; int j = 0; int prev = b[0]; int ret = 1; for(;;){ while(i < n && prev <= a[i]) ++ i; if(i == n) break; prev = a[i]; ++ ret; while(j < m && prev <= b[j]) ++ j; if(j == m) break; prev = b[j]; ++ ret; } return ret; } int main() { vector > a(2); for(int i=0; i<2; ++i){ int n; cin >> n; a[i].resize(n); for(int j=0; j> a[i][j]; sort(a[i].rbegin(), a[i].rend()); } int ret = max(solve(a[0], a[1]), solve(a[1], a[0])); cout << ret << endl; return 0; }