ll permIndex(vector v) { Tree t; ranges::reverse(v); for (ll& x : v) { t.insert(x); x = t.order_of_key(x); } ll res = 0; for (int i = ssize(v); i > 0; i--) { res = res * i + v[i - 1]; } return res; }