void DFS(int arr[10], int arr_size, int n, int vex[10], int result[10]) {
if (n == arr_size) {
for (int i = 0; i < arr_size; i++) {
printf("%d ", result[i]);
}
printf("\n");
return;
}
for (int i = 0; i < arr_size; i++) {
if (vex[i] == 0) {
vex[i] = 1;
result[n] = arr[i];
DFS(arr, arr_size, n + 1, vex, result);
vex[i] = 0;
}
}
}
int main()
{
int arr[10] = { 2 ,3, 4, 5 };
int vex[10] = { 0 };
int result[10] = { 0 };
DFS(arr, 4, 0, vex, result);
return 0;
}