编辑代码

#include <iostream>
#include <vector>
using namespace std;
#define N 3

char c[N] = {'A','B','C'};
vector<bool> visited(N, false);
char ans[N];

void dfs(int idx) {
    int i;
    if (idx == N) {
        cout << ans << ' ';
        return;
    }
    for (i = 0; i < N; i++) {
        if (visited[i] == false) {
            ans[idx] = c[i];
            visited[i] = true;
            dfs(idx+1);
            visited[i] = false;
        }
    }
}

int main() {
    
    dfs(0);
	return 0;
}