题目

permutations-sequence


算法

* 直接模拟


代码

* 直接模拟


class Solution {

public:

    string getPermutation(int n, int k) {

        string res;

        string num = "123456789";

        vector<int> f(n, 1);

        for (int i = 1; i < n; ++i) f[i] = f[i - 1] * i;

        --k;

        for (int i = n; i >= 1; --i) {

            int j = k / f[i - 1];

            k %= f[i - 1];

            res.push_back(num[j]);

            num.erase(j, 1);

        }

        return res;

    }

};

results matching ""

    No results matching ""