#include <bits/stdc++.h>
using namespace std;
int N, X;
vector<int> A;
int main(void) {
  cin >> N >> X;
  A.resize(N);
  for (int i = (0); i < (N); i++) cin >> A[i];
  sort(A.begin(), A.end());
  int ans = 0;
  for (int i = 0; i < N; i++) {
    if (X >= A[i]) {
      X -= A[i];
      ans++;
    }
  }
  if (X != 0) ans--;
  ans = max(0, ans);
  cout << ans << endl;
  return 0;
}
