232's competitive-programming templates./misc
-
intToPerm, permToInt232's competitive-programming templates./misc 2024. 12. 8. 00:15
constexpr int P = 7;const auto fac = [] { std::array f {}; f[0] = 1; for (int i = 1; i intToPerm(int k) { assert(0 res; for (int i = P - 1; i >= 0; --i) { int w = k / fac[P - 1 - i] % (P - i); res[i] = w; for (int j = i + 1; j = w) { res[j] += 1; } } } return res;}int permToInt(const std::array& a) { int res = 0; for (int i = 0; i a[j]) { small += 1; ..