#include #include using std::cin; using std::cout; using std::endl; int main() { int t; cin >> t; while (t--) { int n, cnt1 = 0, cnt2 = 0; std::string a, b; cin >> n >> a >> b; for (char c : a) { cnt1 += c == '1'; } for (char c : b) { cnt2 += c == '1'; } if (cnt1 != cnt2 && n - cnt1 + 1 != cnt2) { cout << -1 << endl; continue; } int m0 = 0, m1 = 0; for (int i = 0; i < n; i++) { if (b[i] == '1') { if (a[i] == '0') { m0++; } else { m1++; } } } int a1 = (cnt2 - m1) * 2, a2 = (cnt2 - m0) * 2 - 1; if (cnt1 != cnt2) { cout << a2 << endl; } else if (n - cnt1 + 1 != cnt2) { cout << a1 << endl; } else { cout << std::min(a1, a2) << endl; } } return 0; }