Pagini recente » Cod sursa (job #1350206) | Cod sursa (job #241480) | Cod sursa (job #2104465) | Cod sursa (job #2913554) | Cod sursa (job #1794947)
#include <cstdio>
const int MAX_N = 8;
int cursor[MAX_N], f[MAX_N];
int main() {
int i, n, j;
FILE *fin = fopen("permutari.in", "r");
FILE *fout = fopen("permutari.out", "w");
fscanf(fin, "%d", &n);
for(i = 0; i < n; i++)
cursor[i] = -1;
i = 0;
while(cursor[0] < n) {
if(i == n) {
for(j = 0; j < n; ++j)
fprintf(fout, "%d ", cursor[j] + 1);
fprintf(fout, "\n");
i--;
}
if(cursor[i] != -1)
f[cursor[i]] = 0;
cursor[i]++;
while(cursor[i] < n && f[cursor[i]] == 1)
cursor[i]++;
if(cursor[i] < n) {
f[cursor[i]] = 1;
i++;
cursor[i] = -1;
} else
i--;
}
fclose(fin);
fclose(fout);
return 0;
}