Advertisement
Guest User

Untitled

a guest
Apr 19th, 2015
196
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.50 KB | None | 0 0
  1. class Solution {
  2. public:
  3.     string getPermutation(int n, int k) {
  4.         vector<int> num(n);
  5.         string res;
  6.         long fact=1;
  7.         for(size_t i=0;i<n;i++) {
  8.             num[i]=i+1;
  9.             fact*=i+1;
  10.         }
  11.        
  12.         int c=n;
  13.         k--;
  14.         for(size_t i=0;i<n;i++) {
  15.             fact/=c;
  16.             c--;
  17.             size_t p=k/fact;
  18.             res+=num[p]+'0';
  19.             num.erase(num.begin()+p);
  20.             k%=fact;
  21.         }
  22.         return res;
  23.     }
  24. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement