#include <bits/stdc++.h>
using namespace std;
int main(){
int i,n,m,s=0,j;
cin>>m>>n;
int a[100];
for(i=1;i<=n;i++)
cin>>a[i-1];
for(i=1;i<=n;i++){
for(j=1;j<=n-i;j++){
if(a[j-1]<a[j])
swap(a[j-1],a[j]);
}
}
for(i=1;i<=n;i++){
s=s+a[i-1];
if(s>=m){
cout<<i;
break;}
}
if(s<m)
cout<<"NO";
return 0;
}
/**************************************************************
Problem: 1326
User: fzy001
Language: C++
Result: Accepted
Time:10 ms
Memory:2072 kb
****************************************************************/