#include<bits/stdc++.h>
using namespace std;
bool cmp(int x,int y){
return x>y;
}
int main(){
int m,n,a[200],s=0,c=0;
bool f=false;
cin>>m>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+1+n,cmp);
for(int i=1;i<=n;i++){
s=s+a[i];
c++;
if(s>=m){
f=true;
break;
}
}
if(f==true){
cout<<c;
}else cout<<"NO";
return 0;
}
/**************************************************************
Problem: 1326
User: zhangailin
Language: C++
Result: Accepted
Time:13 ms
Memory:2076 kb
****************************************************************/