#include <bits/stdc++.h>
int a[210];
int main() {
  int n, size;
  scanf("%d\n%d", &n, &size);
  int i;
  for (i = 0; i < n; i++) {
    scanf("%d", &a[i]);
  }
  int t = 0, m, I;
  for (I = 0; I < 2; I++) {
    for (i = 0; i < n; i++) {
      if (a[i] < a[i + 1]) {
        m = a[i];
        a[i] = a[i + 1];
        a[i + 1] = m;
        t++;
      }
    }
    if (t != 0) t = 0, i = 0, I = 0;
  }
  for (i = 0; i < n; i++) {
    size = size - a[i];
    if (size <= 0) {
      printf("%d", i + 1);
      break;
    }
  }
  return 0;
}
