#include <bits/stdc++.h>
using namespace std;
const long long mod = 1e9 + 7, mod2 = 998244353;
unsigned long long base = 131;
const int w = 5e5 + 5;
long long n, m;
struct node {
  int x, y, z;
} s[w];
int cmp(node x, node y) {
  if (x.x != y.x)
    return x.x > y.x;
  else
    return x.y > y.y;
}
int main() {
  long long i, j, t;
  cin >> n;
  cout << n / 2 + 1 << endl;
  for (i = 1; i <= n; i++) scanf("%d", &s[i].x), s[i].z = i;
  for (i = 1; i <= n; i++) scanf("%d", &s[i].y);
  sort(s + 1, s + 1 + n, cmp);
  cout << s[1].z << " ";
  for (i = 2; i <= n; i += 2) {
    if (s[i].y > s[i + 1].y)
      cout << s[i].z << " ";
    else
      cout << s[i + 1].z << " ";
  }
  return 0;
}
