#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
int nCr(int A, int B) {
  ll ans = 1;
  for (int i = 0; i < B; i++) {
    ans *= A - i;
  }
  for (int i = 0; i < B; i++) {
    ans /= i + 1;
  }
  return ans;
}
int main() {
  int N, X;
  cin >> N >> X;
  vector<int> A(N);
  for (int i = 0; i < (int)(N); i++) {
    cin >> A[i];
  }
  sort(A.begin(), A.end());
  int ans = 0;
  for (int i = 0; i < (int)(N); i++) {
    if (A[i] <= X) {
      ans++;
      X -= A[i];
    } else {
      break;
    }
  }
  cout << ans << endl;
}
