Cod sursa(job #914838)

Utilizator flemixFiru Denis flemix Data 14 martie 2013 15:16:03
Problema Generare de permutari Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.6 kb
#include<stdio.h>
using namespace std;
FILE * f=fopen("permutari.in","r");
FILE * g=fopen("permutari.out","w");
int p[100000],n;
void tipar()
{
    for(int i=1;i<=n;i++)
    {
        fprintf(g,"%d ",p[i]);
    }
    fprintf(g,"\n");
}
void permut(int k,int n,int p[])
{
    int aux,i;
    if(k==n+1) tipar();
    else
    {
        p[k]=k;
        for(i=1;i<=k;i++)
        {
            aux=p[k]; p[k]=p[i]; p[i]=aux;
            permut(k+1,n,p);
            aux=p[k]; p[k]=p[i]; p[i]=aux;
        }
    }
}
int main()
{
    fscanf(f,"%d",&n);
    permut(1,n,p);
    return 0;
}