#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
#define int long long
using vi = vector<int>;

void solve() {
    int n; cin >> n;
    vi cnt(1e5+1);
    int mx = 0;
    for (int i = 0; i < n; i++) {
        int x; cin >> x;
        cnt[x]++;
        mx = max(mx, x);
    }
    vi dp(mx + 1);
    dp[0] = 0;
    dp[1] = cnt[1];
    for (int i = 2; i <= mx; i++) {
        dp[i] = max(dp[i - 1], dp[i - 2] + cnt[i] * i);
    }
    cout << dp[mx] << endl;
}

/*

*/

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);cout.tie(nullptr);
    int t = 1;
    //cin >> t;
    for (int i = 1; i <= t; i++) {
        //cout << "----Test " << i << "----" << endl;
        solve();
    }
    return 0;
}

打家劫舍变种