1)next_permutation()【#include <algorithm>】
作用:求一个排序的下一个排列的函数,可以遍历全排列。
参考案例:Noip普及组2004 火星人
#include<bits/stdc++.h>
using namespace std;
int a[10005],n,m;
int main(){scanf("%d%d",&n,&m);for(int i=0;i<n;i++)scanf("%d",&a[i]);while(m--) next_permutation(a,a+n);for(int i=0;i<n-1;i++) printf("%d ",a[i]); printf("%d",a[n-1]);return 0;
}
与之完全相反的函数还有prev_permutation(就是一个求一个排序的上一个排列的函数)