#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vi = vector<int>;
using ii = pair<int, int>;
template <class A, class B>
ostream& operator<<(ostream& os, pair<A, B> p) {
  return os << p.first << " " << p.second;
}
template <class A, class B>
istream& operator>>(istream& is, pair<A, B>& p) {
  return is >> p.first >> p.second;
}
const int oo = 0x3f3f3f3f;
const ll OO = ll(oo) * oo;
const int N = 100005;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  int n;
  cin >> n;
  vi t(n);
  for (int i = 0; i < n; i++) cin >> t[i];
  sort((t).begin(), (t).end());
  int ans = 0;
  ll T = 0;
  for (int i = 0; i < n; i++) {
    if (T <= t[i]) {
      ans++;
      T += t[i];
    }
  }
  cout << ans << '\n';
  return 0;
}
