为了更好的阅读体检,可以查看我的算法学习网
在线评测链接:P1280
题目内容
学校的体育老师今天请假了,但是他提前请了塔子哥去帮他代一节课。塔子哥给同学们从 1 1 1 开始进行编号,每一个同学都拿到了自己对应的号码,那么他想知道同学们排队顺序的所有方案,于是他考考屏幕前的你。
有 m m m 位学生和位置,现用 1 1 1 ~ m m m 表示学生,用一个长度为 m m m,元素为不重复元素的数组表示排队方案,现在需要给出第 n n n 个方案的结果。排队方案的选择顺序遵循全排列规则,并按字典序升序排序。
输入描述
输入第一行为一个整数 m m m ,表示学生和位置数。( 1 ≤ m ≤ 10 1 \le m \le 10 1≤m≤10 )
输入第二行为一个整数 n n n ,表示排列方案序号。( 1 ≤ n ≤ 1 0 9 1\le n \le 10^{9} 1≤n≤109 )
输出描述
若存在第 n n n 个方案,输出作为方案,数组间元素用空格隔开。
若不存在该方案,输出 − 1 -1 −1。
样例1
输入
4
5
输出
1 4 2 3
样例2
输入
3
7
输出
-1