如题
代码
#include <iostream>
#include <algorithm>
#include <vector>
#include <map>
#include <cstdio>
#include <cstring>
using namespace std;
typedef long long ll;
typedef pair<int, int> PII;
bool st[10];
string s, t;
int l;
vector<string> str;//存储所有的组合
void dfs(int k)
{
if(k == l)
{
str.push_back(t);
}
for(int i = 0; i < l; i++)
{
if(!st[i])
{
t.push_back(s[i]);
st[i] = true;
dfs(k+1);
t.pop_back();
st[i] = false;
}
}
}
int main()
{
cin >> s;
l = s.size();
dfs(0);
}