#include <bits/stdc++.h>
#define int long long
using namespace std;
int n,m,h[500005],r[500005],st[2000006];
void UPDATE(int id, int l, int r, int i, int v)
{
    if (l>i || r<i) return;
    else if (l==r)
    {
        st[id]=v;
        return;
    }
    int mid=(l+r)/2;
    if (i<=mid) UPDATE(id*2,l,mid,i,v);
    else UPDATE(id*2+1,mid+1,r,i,v);
    st[id]=max(st[id*2],st[id*2+1]);
}
void UPDATE(int i, int v)
{
    UPDATE(1,1,n,i,v);
}
int GET(int id, int l, int r, int u, int v, int vl)
{
    if (st[id]<vl) return 0;
    else if (l==r) return l;
    int mid=(l+r)/2;
    int res1=GET(id*2,l,mid,u,v,vl);
    if (res1) return res1;
    else
    {
        int res2=GET(id*2+1,mid+1,r,u,v,vl);
        if (res2) return res2;
    }
    return 0;
}
int GET(int u, int v, int vl)
{
    return GET(1,1,n,u,v,vl);
}
signed main()
{
    ios_base::sync_with_stdio(false),cin.tie(0),cout.tie(0);
    cin>>n>>m;
    for (int i=1;i<=n;i++) cin>>h[i],UPDATE(i,h[i]);
    for (int i=1;i<=m;i++)
    {
        cin>>r[i];
        int ans=GET(1,n,r[i]);
        cout<<ans<<' ';
        if (ans) UPDATE(ans,h[ans]-r[i]),h[ans]-=r[i];
    }
    return 0;
}