#include <iostream>
#include <algorithm>
using namespace std;
const int N=1e5+50;
struct Tx{
    int a,b,id; 
}w[N];

bool cmp(Tx A,Tx B)
{
    if(A.a==B.a)    return A.b>B.b;
    else            return A.a>B.a;
}

int main()
{
    int n;scanf("%d",&n);
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&w[i].a);
        w[i].id=i;
    }
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&w[i].b);
    }sort(w+1,w+1+n,cmp);
    printf("%d\n",n/2+1);
    if(n&1)
    {
        printf("%d",w[1].id);
        for(int i=2;i<=n;i+=2)
        {
            if(w[i].b>w[i+1].b)    printf(" %d",w[i].id);
            else                printf(" %d",w[i+1].id);
        }
    }
    else
    {
        printf("%d %d",w[1].id,w[2].id);
        for(int i=3;i<=n;i+=2)
        {
            if(w[i].b>w[i+1].b)    printf(" %d",w[i].id);
            else                printf(" %d",w[i+1].id);
        }
    }puts("");
    return 0;
}