#include <iostream>
#include<map>
#include<queue>
using namespace std;

int main() {
    int n,maxrating,m;
    multimap<int,int> mp;
    cin>>n>>m;
    queue<int> plus;
    for(int i=1;i<=n;i++)
    {
        int x;
        cin>>x;
        mp.insert({x,i-1});
    }
    //second记录账号  first记录当前账号分数
    for(int i=1;i<=m;i++)
    {
        int x;
        cin>>x;
        int first,second;
        first=mp.begin()->first;
        second=mp.begin()->second;
        first+=x;
        mp.erase(mp.begin());
        mp.insert({first,second});
        auto it=mp.rbegin();
        maxrating=it->first;
        cout<<maxrating<<endl;
    }
    

}
// 64 位输出请用 printf("%lld")

使用multimap储存的原因:有可能会出现同分数,不同账号的情况,此时用map类型pop再insert会导致覆盖另一个账号(排异性),故使用multimap