#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
    int i,j,k;
    int count[50002]={};
    int temp[2][50002]={};
    int n,m,prevsize,nextsize=0,coin[20]; //input
    int *prevlist,*nextlist;
    scanf("%d %d",&n,&m);
    for(i=0;i<m;i++){
        scanf("%d",&coin[i]);
        count[coin[i]]=1;
	temp[0][i]=coin[i];
    }
    prevsize=n;
    i=1;
    while(1){
      prevlist=temp[(i-1)%2];
      nextlist=temp[i%2];
      for(j=0;j<prevsize;j++){    
	for(k=0;k<m;k++){
	  if(prevlist[j]+coin[k]<=n && count[prevlist[j]+coin[k]]==0){
	    count[prevlist[j]+coin[k]]=i+1;
	    nextlist[nextsize-1]=prevlist[j]+coin[k];
	    nextsize++;
	  }
	  if(count[n]!=0)break;
	}
      }
      if(count[n]!=0) break;
      if(count[n]!=0) break;
      prevsize=nextsize;
      nextsize=0;
      i++;
    }
    printf("%d\n",count[n]);
     
    return 0;
}