#include<stdio.h>
#include<limits.h>
int c[20];
int memo[50000];

int f(int);

int f(int x){
    if(x==0)return 0;
    if(memo[x]!=0)return memo[x];
    int i,min=INT_MAX,a;
    for(i=0;i<20;i++){
        if(c[i]!=0&&x-c[i]>=0){
            a=f(x-c[i]);
            if(a<min)min=a;
        }
    }
    return memo[x]=min+1;
}

int main(void){
    int n,m,i;
    scanf("%d %d",&n,&m);
    for(i=0;i<m;i++)scanf("%d",&c[i]);
    printf("%d\n",f(n));
    return 0;
}