1class Solution {2public String getPermutation(int n, int k) {3int fact = 1;4List<Integer> nums = new ArrayList<>();5for (int i = 1; i < n; i++) {6fact = fact * i;7nums.add(i);8}9nums.add(n); // Add last permutation number.10String res = "";11k = k - 1; // We use 0 indexing.12while (true) {13res = res + nums.get(k / fact);14nums.remove(k / fact);15if (nums.size() == 0) break;1617k = k % fact;18fact = fact / nums.size();19}20return res;21}22}