提交时间:2022-07-30 21:49:43

运行 ID: 55719

#include<bits/stdc++.h> using namespace std; int a[20],vis[20]={0},ans[20]={0}; int k; void dfs(int num){ if(num==7){ for(int i=1;i<=5;i++){ cout<<ans[i]<<' '; } cout<<ans[6]<<endl; } else{ for(int i=1;i<=k;i++){ if(vis[i]==0&&a[i]>ans[num-1]){ vis[i]=1; ans[num++]=a[i]; dfs(num); vis[i]=0; num--; } } } } int main(){ while(cin>>k&&k!=0){ for(int i=1;i<=k;i++){ cin>>a[i]; } dfs(1); cout<<endl; } return 0; }