#include <stdio.h>
void generarVariaciones(int elementos[], int n, int r, int resultado[], int usados[]) {
if (r == 0) {
// Imprimir el resultado
for (int i = 0; i < n; i++) {
printf("%d ", resultado[i]);
}
printf("\n");
return;
}
for (int i = 0; i < n; i++) {
if (!usados[i]) {
resultado[r - 1] = elementos[i];
usados[i] = 1;
generarVariaciones(elementos, n, r - 1, resultado, usados);
usados[i] = 0;
}
}
}
int main() {
int elementos[] = {1, 2, 3};
int n = sizeof(elementos) / sizeof(elementos[0]);
int r = 2;
int resultado[r];
int usados[n];
generarVariaciones(elementos, n, r, resultado, usados);
return 0;
}