Submission #1224375

#TimeUsernameProblemLanguageResultExecution timeMemory
1224375vipulGroup Photo (JOI21_ho_t3)C++20
0 / 100
0 ms320 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; struct Fenwick { int n; vector<ll> f; Fenwick(int _n): n(_n), f(n+2, 0) {} void update(int i, ll v) { for (; i <= n; i += i & -i) f[i] += v; } ll query(int i) { ll res = 0; for (; i > 0; i -= i & -i) res += f[i]; return res; } }; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int N; cin >> N; vector<ll> A(N), B(N); for (int i = 0; i < N; ++i) { cin >> A[i]; B[i] = A[i] + 2LL * i; } // Coordinate compression vector<ll> vals = B; sort(vals.begin(), vals.end()); vals.erase(unique(vals.begin(), vals.end()), vals.end()); int M = vals.size(); Fenwick bit(M + 2); ll ans = 0; for (int i = 0; i < N; ++i) { int pos = lower_bound(vals.begin(), vals.end(), B[i]) - vals.begin() + 1; ans += i - bit.query(pos); bit.update(pos, 1); } cout << ans ; 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...