#include<bits/stdc++.h>
using namespace std;
bool cmp(int x,int y){
	return x>y;
}
int main(){
	int m,n,s=0,c=0;
	bool f=false;
	cin>>m>>n;
	int a[200];
	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: laichenxu
	Language: C++
	Result: Accepted
	Time:13 ms
	Memory:2076 kb
****************************************************************/