2011年12月17日 星期六

941 - Permutations

本題討論重新排列一個字串的組合方式,例如給定字串"abc",可重新排列得到{"abc", "acb", "bac", "bca", "cab", "cba"},長度為3的字串共有3!種排列方式。
給定一個字串S(長度小於等於20,全為小寫字元,且每個字元皆不相同),及一個整數N(0 <= N < 20!),請找出第N個排列方式(以字典順序由小到大排列,且第一個為編號0),例如:
當S="abc",N=0,其結果為"abc"。
當S="abc",N=5,其結果為"cba"。
當S="abc",N=3,其結果為"bca"。
當S="cba",N=3,其結果為"bca"。
注意字串S的字元不一定由小到大排列。

Input
輸入資料的第一列有一個整數表示測試資料的組數,每組資料兩列,第一列表示一個字串S,第二列表示整數N。

Output
請依題意輸出字串。

Sample Input
2
abc
3
abcde
119
Sample Output
bca
edcba


原文出處

沒有留言:

張貼留言