#include<bits/stdc++.h> using namespace std; int n,v[100],f[100],val[100]; // void dfs(int step){ if(step>n){ for(int i=1;i<=n;i++) cout<<f[i]<<" "; cout<<endl; return; } for(int i=1;i<=n;i++){ if(v[i]==0){ v[i]=1; f[step]=val[i]; dfs(step+1); v[i]=0; } } } int main(){ cin>>n; for(int i=1;i<=n;i++) cin>>val[i]; sort(val+1,val+n+1); dfs(1); } /************************************************************** Problem: 1685 User: admin Language: C++ Result: Accepted Time:1534 ms Memory:2080 kb ****************************************************************/