#include #include #include template std::vector vec(int len, T elem) { return std::vector(len, elem); } void solve() { int n; std::cin >> n; auto grid = vec(n, vec(n, 0)); std::vector xs(n); for (int i = 0; i < n; ++i) { auto& x = xs[i]; std::cin >> x; if (x == 2) { for (int j = 0; j < n; ++j) grid[i][j] = 1; } } std::vector ys(n); for (int j = 0; j < n; ++j) { auto& y = ys[j]; std::cin >> y; if (y == 2) { for (int i = 0; i < n; ++i) grid[i][j] = 1; } } for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { if (grid[i][j] == 1) { xs[i] = 0; ys[j] = 0; } } } int ans = std::max(std::accumulate(xs.begin(), xs.end(), 0), std::accumulate(ys.begin(), ys.end(), 0)); for (int i = 0; i < n; ++i) { for (int j = 0; j < n; ++j) { ans += grid[i][j]; } } std::cout << ans << "\n"; } int main() { std::cin.tie(nullptr); std::ios::sync_with_stdio(false); solve(); return 0; }