Pagini recente » Cod sursa (job #600371) | Cod sursa (job #2547700) | Cod sursa (job #1913497) | Cod sursa (job #2668885) | Cod sursa (job #1603454)
#include <stdio.h>
void permute(int v[], int start, int end){
int i;
if(start == end){
for(i = 1; i <= end; i++){
printf("%d ", v[i]);
}
printf("\n");
}
else {
for(i = 1; i <= end; i++){
int ok = 1;
int j;
for(j = 1; j <= start; j++)
{
if (v[j] == i)
{
ok = 0;
}
}
if(ok == 1)
{
v[start + 1] = i;
permute(v, start + 1, end);
}
}
}
}
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;
}