poj 1833 排列
http://poj.org/problem?id=1833
还是next_permutation.
这次是Int类型的
需要注意的是next_permutation是先判断时候有后继,返回一个bool值,如果为true,就转化到后继。
而next_permutation函数本书不考虑其值,就具有转化成后继的作用。
而且默认最后一个排列的下一个排列是第一个排列。
1
2
3 /* ***********************************************
4 Author :111qqz
5 Created Time :2016年02月19日 星期五 15时43分58秒
6 File Name :1833.cpp
7 ************************************************ */
8
9 #include <algorithm>
10 #include <cstdio>
11 #include <iostream>
12 #include <cstring>
13 #include <string>
14 #include <cmath>
15 #include <map>
16
17 using namespace std;
18 const int N=3E3+5;
19 int n ,m,k;
20 int a[N],b[N];
21
22 int main()
23 {
24 cin>>m;
25 while (m--)
26 {
27 cin>>n>>k;
28 // k = k % n;
29
30 for ( int i = 0;i < n ; i++ )
31 {
32 scanf("%d",&a[i]);
33 }
34 while (k--)
35 {
36 next_permutation(a,a+n);
37 }
38 for ( int i = 0 ; i < n ; i++ )
39 {
40 printf("%d ",a[i]);
41 }
42 printf("\n");
43
44
45 }
46
47
48 return 0;
49 }
50
51