#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<ll,int>
#define fi first
#define se second
const int N=1e6+5;
ll n,k;
ll a[N];
ll ans[N];
priority_queue<pii,vector<pii>,greater<pii> > q;
inline int check(ll mid)
{
ll sum=n;
for(int i=1;i<=k;i++)
{
sum-=mid/a[i];
if(sum<0)return 0;
}
return 1;
}
signed main()
{
cin>>n>>k;
ll mid,l=0,r=0,t=0;
for(int i=1;i<=k;i++)
{
cin>>a[i];
if(r<a[i])r=a[i];
}
l=r+1;
r*=n;
while(l<=r)
{
mid=(l+r)>>1;
if(check(mid))t=mid,l=mid+1;
else r=mid-1;
}
for(int i=1;i<=k;i++)
{
t=min(t,max(0ll,((t/a[i])-1)*a[i]));
}
ll num=0;
for(int i=1;i<=k;i++)
{
num+=t/a[i];
q.push(make_pair(t/a[i]*a[i],i));
}
while(num<n)
{
pii u=q.top();
q.pop();
ans[u.se]=++num;
u.fi+=a[u.se];
q.push(u);
}
for(int i=1;i<k;i++)
{
printf("%lld ",ans[i]);
}
cout<<ans[k];
return 0;
}