#include<stdio.h>
#include<stdlib.h>
#include<math.h>

typedef long long int int64;

#define MAX(a,b) ((a)>(b)?(a):(b))
#define MIN(a,b) ((a)<(b)?(a):(b))
#define ABS(a) ((a)>(0)?(a):-(a))

int calc(int n,int *d,int m,int *dp){
  if(dp[n]>=0) return dp[n];
  int res=n;
  int i;
  for(i=0;i<m;i++){
    if(n-d[i]>=0){
      res=MIN(res,calc(n-d[i],d,m,dp)+1);
    }
  }
  dp[n]=res;
  return res;
}

void run(void){
  int n,m;
  scanf("%d%d",&n,&m);
  int d[20];
  int i;
  for(i=0;i<m;i++) scanf("%d",d+i);
  int *dp=(int *)malloc(sizeof(int)*(n+1));
  for(i=0;i<=n;i++) dp[i]=-1;
  dp[0]=0;
  int ans=calc(n,d,m,dp);
  printf("%d\n",ans);
  free(dp);
  return;
}

int main(void){
  run();
  return 0;
}

