#include <bits/stdc++.h>
#define int long long
using namespace std;
inline int read(){
int x=0,f=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')f=-f;ch=getchar();}
while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}
return x*f;
}
inline void write(int x){
if(x<0){
putchar('-');
x=-x;
}
if(x>9)write(x/10);
putchar(x%10+'0');
}
inline int _min(int __a,int __b){return __a<__b?__a:__b;}
inline int _max(int __a,int __b){return __a>__b?__a:__b;}
int n;
int a[10];
inline pair<int,int>get_min(){
int res=1e9,resi=0;
for(int i=1;i<=9;i++){
if(a[i]<=res){res=a[i];resi=i;}
}
return {res,resi};
}
int WS;
string ans="";
pair<int,int>Min;
signed main(){
n=read();
for(int i=1;i<=9;i++)a[i]=read();
Min=get_min();
WS=n/Min.first;
for(int i=1;i<=WS;i++){
ans+=to_string(Min.second);
n-=Min.first;
}
ans=' '+ans;
for(int i=1;i<=WS;i++){
for(int j=9;j>Min.second;j--){
if(n>=a[j]-Min.first){
n-=a[j]-Min.first;
ans[i]=j+'0';
}
}
}
for(int i=1;i<=WS;i++)putchar(ans[i]);
return 0;
}