#include <bits/stdc++.h>
using namespace std;
const int maxn = 5e3;
int sum[4];
int cls[maxn];
char s[2][maxn + 1];
bool ans[maxn];
int abs(int x) { return x < 0 ? -x : x; }
int main() {
  int n;
  scanf("%d%s%s", &n, s[0], s[1]);
  for (int i = 0; i < n; i++)
    if (s[0][i] - '0')
      if (s[1][i] - '0')
        cls[i] = 0;
      else
        cls[i] = 1;
    else if (s[1][i] - '0')
      cls[i] = 2;
    else
      cls[i] = 3;
  for (int i = 0; i < n; i++) sum[cls[i]]++;
  int num[4];
  for (num[1] = 0; num[1] <= sum[1]; num[1]++)
    for (num[2] = 0; num[2] <= sum[2]; num[2]++) {
      int left = n / 2 - num[1] - num[2];
      if (left < 0) continue;
      if (sum[1] + sum[2] - num[1] - num[2] > n / 2) continue;
      int mx0 = min(left, sum[0]), mn3 = left - mx0, mx = 2 * mx0 - sum[0];
      int mx3 = min(left, sum[3]), mn0 = left - mx3, mn = 2 * mn0 - sum[0];
      int dis = (sum[2] - num[2]) - num[1];
      if (abs(dis) % 2 != sum[0] % 2) continue;
      if (mn <= dis && dis <= mx) {
        num[0] = (dis + sum[0]) / 2;
        num[3] = left - num[0];
        for (int i = 0; i < n; i++)
          if (num[cls[i]]) ans[i] = true, num[cls[i]]--;
        for (int i = 0; i < n; i++)
          if (ans[i]) printf("%d ", i + 1);
        return 0;
      }
    }
  printf("-1");
  return 0;
}
