#include <bits/stdc++.h>
using namespace std;
struct node {
  int v;
  int p;
} a[100010], b[100010];
vector<int> ans;
bool cmp(node x, node y) { return x.v > y.v; }
int main() {
  int n;
  long long suma = 0, sumb = 0;
  scanf("%d", &n);
  for (int i = 0; i < n; i++) {
    scanf("%d", &a[i].v);
    suma += (long long)a[i].v;
    a[i].p = i;
  }
  for (int i = 0; i < n; i++) {
    scanf("%d", &b[i].v);
    sumb += (long long)b[i].v;
    b[i].p = i;
  }
  sort(a, a + n, cmp);
  ans.push_back(a[0].p);
  for (int i = 1; i < n; i = i + 2) {
    if (i == n - 1)
      ans.push_back(a[n - 1].p);
    else {
      if (b[a[i].p].v > b[a[i + 1].p].v)
        ans.push_back(a[i].p);
      else
        ans.push_back(a[i + 1].p);
    }
  }
  printf("%d\n", ans.size());
  printf("%d", ans[0] + 1);
  for (int i = 1; i < ans.size(); i++) printf(" %d", ans[i] + 1);
  printf("\n");
  return 0;
}
