#include <bits/stdc++.h>
const int N = 1e5 + 51;
int n, a[N], b[N], d1, d2, d3;
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", a + i), a[n + 1] ^= a[i];
  for (int i = 1; i <= n; i++) scanf("%d", b + i), b[n + 1] ^= b[i];
  for (int i = 1; i <= n; i++) d1 += a[i] != b[i];
  std::sort(a + 1, a + n + 1);
  std::sort(b + 1, b + n + 1);
  for (int i = 1; i <= n; i++) d2 += a[i] == b[i];
  std::sort(a + 1, a + n + 2);
  std::sort(b + 1, b + n + 2);
  for (int i = 1; i <= n + 1; i++) d3 += a[i] == b[i];
  if (d3 != n + 1) return puts("-1"), 0;
  printf("%d", d1 < 2 ? d1 : d1 + (d2 == n));
}
