diff options
Diffstat (limited to 'math/permIndex.cpp')
| -rw-r--r-- | math/permIndex.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/math/permIndex.cpp b/math/permIndex.cpp new file mode 100644 index 0000000..09ff7f7 --- /dev/null +++ b/math/permIndex.cpp @@ -0,0 +1,14 @@ +ll permIndex(vector<ll> v) { + Tree<ll> t; + reverse(all(v)); + for (ll& x : v) { + t.insert(x); + x = t.order_of_key(x); + } + ll res = 0; + for (ll i = sz(v); i > 0; i--) { + res *= i; + res += v[i - 1]; + } + return res; +} |
