#include <bits/stdc++.h>
using namespace std;
const int N = 100005;
int n;
struct node {
  int a, b, pos;
} t[N];
bool cmp(node c, node d) { return c.a > d.a; }
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", &t[i].a);
  for (int i = 1; i <= n; i++) scanf("%d", &t[i].b);
  for (int i = 1; i <= n; i++) t[i].pos = i;
  sort(t + 1, t + n + 1, cmp);
  printf("%d\n", n / 2 + 1);
  printf("%d ", t[1].pos);
  if (n % 2 == 0) {
    printf("%d ", t[n].pos);
    n--;
  }
  for (int i = 2; i <= n; i += 2)
    if (t[i].b > t[i + 1].b)
      printf("%d ", t[i].pos);
    else
      printf("%d ", t[i + 1].pos);
  printf("\n");
  return 0;
}
