#include<stdio.h>
#define MMAX 20
#define NMAX 50000
#define INF 1<<30

 int C[MMAX],T[NMAX];

 int main(){
         int n,m,i,j;
         scanf("%d%d",&n,&m);

         for(i=1;i<=m;i++){
                   scanf("%d",&C[i]);
                   }

         for(i=0;i<=NMAX;i++){T[i]=INF;}
         T[0]=0;
         for(i=1;i<=m;i++){
                       for(j=0;j+C[i]<=n;j++){
                                     T[j+C[i]]=T[j+C[i]]<T[j]+1?T[j+C[i]]:T[j]+1;
                                     }
                       }
         printf("%d\n",T[n]);
         return 0;
         }
