#include <bits/stdc++.h>
using namespace std;
long long n, t;
const int MAXN = 2e5 + 5;
map<int, int> f;
vector<int> v;
long long a[MAXN];
int main() {
  ios::sync_with_stdio(false);
  cin >> n;
  for (int i = 0; i < n; i++) {
    cin >> t;
    f[t]++;
  }
  for (auto x : f) {
    v.push_back(x.second);
  }
  sort(v.begin(), v.end());
  for (int i = 0; i < v.size(); i++) {
    for (long long j = v[i]; j > 0; j--) {
      a[j] = max(a[j], j);
      if (j & 1) continue;
      a[j] = max(a[j], a[j / 2] + j);
    }
  }
  long long ans = 0;
  for (int i = 0; i < MAXN; i++) ans = max(ans, a[i]);
  cout << ans << endl;
  return 0;
}
