Cod sursa(job #914854)

Utilizator flemixFiru Denis flemix Data 14 martie 2013 15:23:26
Problema Generare de permutari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.67 kb
#include<stdio.h>
using namespace std;
FILE * f=fopen("permutari.in","r");
FILE * g=fopen("permutari.out","w");
int p[10],viz[10],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 viz[])
{
    int i;
    if(k==n+1) tipar();
    else
    {
        for(i=1;i<=n;i++)
        {
            if(viz[i]==0)
            {
                p[k]=i;
                viz[i]=1;
                permut(k+1,n,p,viz);
                viz[i]=0;
            }
        }
    }
}
int main()
{
    fscanf(f,"%d",&n);
    permut(1,n,p,viz);
    fclose(g);
    return 0;
}