32612023-02-23 14:31:30sztomiRészekre (40)cpp11Accepted 40/4035ms6720 KiB
#include <bits/stdc++.h>

using namespace std;

int megold(int n, vector<int>& a){
    int akt;
    map<int, int, greater<int>> aktiv;
    for(int i = 0; i < n; i++){
        akt = a[i];
        auto it = aktiv.upper_bound(akt);
        if(it != aktiv.end()){
            it->second--;
            if(it->second == 0){
                aktiv.erase(it);
            }
        }
        aktiv[akt]++;
    }

    int ki = 0;
    for(auto x : aktiv){
        ki += x.second;
    }

    return ki;
}

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(NULL);

    int n;
    cin >> n;
    vector<int> a(n);
    for(int& x : a) cin >> x;
    cout << megold(n, a) << "\n";
}
SubtaskSumTestVerdictTimeMemory
base40/40
1Accepted0/03ms1828 KiB
2Accepted0/035ms2852 KiB
3Accepted2/23ms2336 KiB
4Accepted2/23ms2416 KiB
5Accepted2/23ms2468 KiB
6Accepted3/33ms2684 KiB
7Accepted3/34ms3064 KiB
8Accepted3/34ms3260 KiB
9Accepted3/36ms3344 KiB
10Accepted3/317ms4356 KiB
11Accepted3/328ms5536 KiB
12Accepted3/335ms6060 KiB
13Accepted4/435ms6300 KiB
14Accepted4/435ms6624 KiB
15Accepted5/535ms6720 KiB