Submission #1181697

#TimeUsernameProblemLanguageResultExecution timeMemory
1181697mehmetkaganMountains (NOI20_mountains)C++20
100 / 100
582 ms21560 KiB
#include <bits/stdc++.h> #include <ext/pb_ds/assoc_container.hpp> using namespace std; using namespace __gnu_pbds; using ll = long long; #define int ll template<typename T> using ordered_multiset = tree<T, null_type, less_equal<T>, rb_tree_tag, tree_order_statistics_node_update>; int32_t main() { ios::sync_with_stdio(false); cin.tie(0); int n; cin >> n; vector<int> h(n); for (int &x : h) cin >> x; ordered_multiset<int> left, right; for (int i = 0; i < n; ++i) right.insert(h[i]); int ans = 0; for (int i = 0; i < n; ++i) { right.erase(right.find_by_order(right.order_of_key(h[i]))); int l = left.order_of_key(h[i]); int r = right.order_of_key(h[i]); ans += l * r; left.insert(h[i]); } cout << ans << '\n'; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...