#include <iostream>#include <set>using namespace std;int A[1000];void PRint_permutation(int n, int * A, int cur){ if(n == cur){ //边界 for(int i = 0; i < n; i++){ cout<<A[i]; } cout<<endl; } else { for(int i = 1; i <= n; i++){ int pd = 1; for(int j = 0; j < cur; j++){ //判断在生成数组中是否存在这个值 if(A[j] == i) pd = 0; } if(pd){ A[cur] = i; //这个i不在数组中,添加到数组 print_permutation(n, A, cur + 1); } } }}int main(){ int n; cin>>n; print_permutation(n, A, 0); //测试}
新闻热点
疑难解答