#include <bits/stdc++.h>

#define REP(i,n) for(int i=0;i<(int)(n);i++)
#define ALL(x) (x).begin(),(x).end()

using namespace std;

int main() {
  int H, N;
  cin >> H >> N;
  vector<int> v(N);
  REP(i,N) cin >> v[i];
  sort(ALL(v));
  REP(i,N-1) v[i+1] += v[i];
  cout << upper_bound(ALL(v), H) - v.begin() << endl;
  return 0;
}