Pagini recente » Statistici Manole Robert (robertbuzz) | Istoria paginii utilizator/razv789 | Monitorul de evaluare | Istoria paginii utilizator/adina.licsor | Cod sursa (job #1603387)
#include <stdio.h>
void swap(int v[], int i, int j){
int aux;
aux = v[i];
v[i] = v[j];
v[j] = aux;
}
void permute(int v[], int start, int end){
int i;
if(start == end){
for(i = 0; i < end; i++){
printf("%d ", v[i]);
}
printf("\n");
}
else {
for(i = start; i < end; i++){
swap(v, start, i);
permute(v, start + 1, end);
swap(v, start, i);
}
}
}
int main(){
FILE *in, *out;
in = fopen("permutari.in", "r");
out = freopen("permutari.out", "w", stdout);
int N, i;
fscanf(in, "%d", &N);
int v[N];
for(i = 0; i < N; i++){
v[i] = i + 1;
}
permute(v, 0, N);
fclose(in);
fclose(out);
return 0;
}