Submission #311763

#TimeUsernameProblemLanguageResultExecution timeMemory
311763kaplanbarBaloni (COCI15_baloni)C++14
100 / 100
1449 ms42104 KiB
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
constexpr int N = 1e6+5;
int n;
int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cin >> n;
    map<int,set<int>> v;
    for(int i = 0; i < n; i++) {
      int x;
      cin >> x;
      v[-x].insert(i);
    }
    int c = 0;
    for(auto &x : v) {
      while(!x.second.empty()) {
        c++;
        int now = -x.first;
        int pos = -1;
        while(v[-now].upper_bound(pos) != v[-now].end()) {
          int x = *v[-now].upper_bound(pos);
          pos = x;
          v[-now].erase(pos);
          now--;
        }
      }
    }
    cout << c << "\n";
    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...