#include<stdio.h>
#include<math.h>
#define MaxSize 100
int main() {
int i, j, A[MaxSize] = {0}, B[MaxSize] = {0}, m, n, p, sum, cnt, min = 999;
for (i = 0; i < MaxSize; i++)A[i] = B[i] = 0;
scanf("%d %d", &m, &n);
for (i = 0; i < n; i++)scanf("%d", &B[i]);
p = pow(2, n);
for (i = 0; i < p; i++) {
sum = 0;
cnt = 0;
for (j = 0; j < n; j++)A[j] = 0;
A[n - 1] = i;
for (j = n - 1; j > 0; j--) {
if (A[j] >= 2) {
A[j - 1] += A[j] / 2;
A[j] = A[j] % 2;
}
}
//for(j=0;j<n;j++)printf("%d",A[j]);
//for(j=0;j<n;j++)A[j]=0;
for (j = 0; j < n; j++) {
if (A[j] == 1) {
sum += B[j];
cnt++;
}
}
if (sum == m) {
if (min > cnt)min = cnt;
}
}
if (min == 999)min = 0;
printf("%d", min);
}