现在的位置: 首页 > 综合 > 正文

hdoj1027 Ignatius and the Princess II

2018年04月02日 ⁄ 综合 ⁄ 共 387字 ⁄ 字号 评论关闭

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1027

题意就是要把1到n的所有排列按字典排序(升序)定义为由小到大。1 2 3 4 5 6 ……n 为最小的排序。问第m小的排序什么样的。

/*排列问题
此题可以用C++STL的函数next_permutation来做
*/
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
	int n, m;
	int i;
	int a[1001];
	while (cin >> n >> m) {
		for (i = 0; i <= n; i++)
			a[i] = i;
		for (i = 1; i < m; i++)
			next_permutation(a+1, a+n+1);
		cout << a[1];
		for (i = 2; i <= n; i++)
			cout << " " << a[i];
		cout << endl;
	}
	return 0;
}
【上篇】
【下篇】

抱歉!评论已关闭.