题目描述
给一个数字串 (长度不超过 ,可能含重复数字)和一个整数 。把 的字符重排,得到的所有互不相同的排列按字典序从小到大排成一队,输出队伍里的第 个。数据保证 不超过队伍长度。
思路:先 sort 成最小排列——它就是队伍的第 个;再调用 次 next_permutation。跳的次数是序号差 ,多跳或少跳一次都会错位。
输入格式
第一行一个字符串 (,只含数字字符)。
第二行一个整数 ( 不超过 的不同排列个数)。
输出格式
一行一个字符串:字典序第 小的那个不同排列。
样例
输入:
112
2
输出:
121
112 的不同排列按字典序是 112、121、211,第 2 个是 121。
数据范围
,只含数字字符; 不超过 的不同排列个数(最多 个,逐个跳完全来得及)。