Cod sursa(job #1129090)
Utilizator | andrei Walrus21 | Data | 27 februarie 2014 20:07:27 |
---|---|---|---|
Problema | Generare de permutari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.49 kb |
#include <stdio.h>
#define n 9
using namespace std;
FILE *f=fopen("permutari.in","r");
FILE *g=fopen("permutari.out","w");
int N,s[n];
bool bf[n];
void a()
{
for(int i=1;i<=N;i++)
fprintf(g,"%d ",s[i]);
fprintf(g,"\n");
}
void b(int k)
{
for(int i=1;i<=N;i++)
if(!bf[i])
{
bf[i]=1; s[k]=i;
if(k==N) a();
else b(k+1);
bf[i]=0;
}
}
int main()
{
fscanf(f,"%d",&N); b(1);
return 0;
}