#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define ll int64_t #define Rep(i, n) for (ll i = 0; i < n; i++) using namespace std; typedef vector vec; typedef vector mat; const ll inf = 1LL << 60; template inline void chmin(T& a, T b) { if (a > b) { a = b; } } template inline void chmax(T& a, T b) { if (a < b) { a = b; } } void printvec (vec &v) { Rep (i, (ll)v.size()) { cout << v[i] << " \n"[i+1 == (ll)v.size()]; } } int main(){ cin.tie(0); ios::sync_with_stdio(false); ll N; cin >> N; vec S(N), T(N); Rep (i, N) cin >> S[i]; Rep (i, N) cin >> T[i]; ll a = 0, b = 0, c = 0, d = 0, e = 0, f = 0; Rep (i, N) { if (S[i] == 0) a++; if (S[i] == 1) b++; if (S[i] == 2) c++; if (T[i] == 0) d++; if (T[i] == 1) e++; if (T[i] == 2) f++; } ll ans = b*f + c*e + c*f; if (f == 0 and c == 0) ans += max(b, e); else if (f == 0 and c != 0) ans += b; else if (f != 0 and c == 0) ans += e; cout << ans << "\n"; }