#include #include #include #include #include #include #include using namespace std; const int MR=1e6+10; typedef long long LL; int n,k[MR],a[MR],c[10]; char s[MR]; int main() { scanf("%d%s",&n,s); for(int i=1;i<=9;i++) scanf("%d",c+i); int m=strlen(s); if(m>n){ printf("-1\n"); return 0; } if(m0){ a[i]=j; c[j]--; flag=1; break; } } if(flag){ cur=i; } else{ cur=-1; } break; } } if(cur==-1){ printf("-1\n"); return 0; } if(cur==0){ next_permutation(a+1,a+1+n); } else if(cur>0){ for(int i=1;i<=9;i++){ for(int j=1;j<=c[i];j++){ cur++; a[cur]=i; } } } for(int i=1;i<=n;i++) printf("%d",a[i]);printf("\n"); return 0; }