#include<stdio.h>
#include<stdlib.h>
#define min(a,b) (a)<(b)?(a):(b)
int dp[50001]={0},n,m,c[20],i,j,k;
int main()
{
	scanf("%d%d",&n,&m);
	for(i=0;i<m;i++)
		scanf("%d",&c[i]);
	for(i=1;i<=n;i++)
		dp[i]=500000000;
	for(i=0;i<m;i++)
		for(j=0;j<=n;j++)
			if(j-c[i]>=0)
				dp[j]=min(dp[j],dp[j-c[i]]+1);
	printf("%d\n",dp[n]);
	return 0;
}