#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
****************************************************************/