#include <bits/stdc++.h>
using namespace std;
int main() {
long long n, m;
cin >> n >> m;
vector<long long> box(n);
vector<long long> key(m);
long long jinumsbox = 0;
long long jinumskey = 0;
long long count = 0;
long long i = 0;
for (i = 0; i < n; i++) {
cin >> box[i];
if (box[i] & 1 == 1) {
jinumsbox++;
}
}
for (i = 0; i < m; i++) {
cin >> key[i];
if (key[i] & 1 == 1) {
jinumskey++;
}
}
if (n == 1 && m == 1) {
if ((box[0] + key[0]) & 1 == 1) {
cout << 1;
return 0;
}
else {
cout << 0;
return 0;
}
}
else if(n == 1){
cout << (((m - jinumskey) & 1) == 0);
if (jinumsbox == 1 && (((m - jinumskey) & 1) == 0)) {
cout << 1;
return 0;
}
else if (jinumsbox == 0 && (((m - jinumskey) & 1) == 1)) {
cout << 1;
return 0;
}
else {
cout << 0;
return 0;
}
}
else if (m == 1) {
if (jinumskey == 1 && (((n - jinumsbox) & 1) == 0)) {
cout << 1;
return 0;
}
else if (jinumskey == 0 && (((n - jinumsbox) & 1) == 1)) {
cout << 1;
return 0;
}
else {
cout << 0;
return 0;
}
}
else {
count = min(jinumskey, n - jinumsbox) + min(jinumsbox, m - jinumskey);
}
cout << count;
return 0;
}