提交时间:2024-08-21 18:45:14

运行 ID: 50400

#include<bits/stdc++.h> using namespace std; vector<string>p; vector<int>u; int n; void backtracking(const vector<string>&s){ if(p.size()==n){ for(int i=0;i<n;i++){ cout<<p[i]<<" "; } cout<<endl; return; } for(int i=0;i<s.size();i++){ if(u[i]==0){ u[i]=1; p.push_back(s[i]); backtracking(s); u[i]=0; p.pop_back(); } } } int main(){ cin>>n; vector<string>s(n); u.resize(n,0); for(int i=0;i<n;i++){ cin>>s[i]; } backtracking(s); }