#include "bits/stdc++.h"
#include <vector>
using std::cout, std::cin, std::vector, std::string;
void solve(){
long long int n,tmp,count=0;
vector<std::pair<long long int, long long int>> h;
cin >> n;
h.reserve(n);
for (long long int i =0; i<n;i++){
cin>>tmp;
auto it = lower_bound(
h.begin(), h.end(),
std::make_pair(tmp, i),
[](auto &a, auto &b){
return a.first < b.first;
}
);
h.insert(it, std::make_pair(tmp, i));
}
std::sort(h.begin(),h.end());
long long int left=0,right=0;
for (long long int i=2;i<n;i++){
left=right=0;
for (long long int j = 0; j<i;j++){
if (h[j].first == h[i].first) continue;
if(h[i].second > h[j].second) left++;
else right++;
}
count+=left*right;
}
cout << count << '\n';
}
int main(){
std::ios::sync_with_stdio(false);
cin.tie(nullptr);
unsigned long long ct =1;
// cin >> ct;
while(ct--) solve();
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |