#include<iostream>
#include<algorithm>
using namespace std;
const int N = 1e6 + 10;
long long n, a[N], w, m, s, res;
int main(void) {
scanf("%lld", &n);
for (int i = 0; i < n; ++i) scanf("%lld", &a[i]);
sort(a, a + n);
scanf("%lld", &w);
int l = 0, r = n - 1;
while (l < r) {
int mid = l + r + 1 >> 1;
if (a[mid] <= w) l = mid;
else r = mid - 1;
}
m = a[l];
for (int i = 0; i < n; ++i) {
s += a[i];
++res;
if (s > m) break;
}
cout << res - 1 << endl;
return 0;
}