ll inversions(const vector& v) { Tree> t; //ordered statistics tree @\sourceref{datastructures/pbds.cpp}@ ll res = 0; for (ll i = 0; i < ssize(v); i++) { res += i - t.order_of_key({v[i], i}); t.insert({v[i], i}); } return res; }