#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
const int use[10]={0,2,5,5,4,5,6,3,7,6};
int n,m,x[N],dp[N];
int main()
{
	cin>>n>>m;
	for(int i=0;i<m;i++)cin>>x[i];
	dp[0]=1;
	for(int i=0;i<m;i++)
	{
		for(int j=use[x[i]];j<=n;j++)
		{
			dp[j]=max(dp[j],dp[j-use[x[i]]]+1);
		}
	}
	sort(x,x+m);
	m--;
	while(n>0)
	{
		if(n>=use[x[m]]&&dp[n]==dp[n-use[x[m]]]+1)
			n-=use[x[m]],cout<<x[m];
		else
			m--;
	}
	return 0;
}