Cod sursa(job #1496138)

Utilizator rares1012Rares Cautis rares1012 Data 4 octombrie 2015 14:27:08
Problema Generare de permutari Scor 20
Compilator c Status done
Runda Arhiva educationala Marime 0.94 kb
#include <stdio.h>
#include <string.h>

int v[9]={1,2,3,4,5,6,7,8,9},poz[5];
int pozc=0,pozmax,pozk=1;

void permute(int l,int r,FILE*fo)
{
    int i,k,q;
    if (l==r)
    {
        //if(pozk==poz[pozc])
        //{
            for(k=0; k<=r; k++)
                fprintf(fo,"%d ",v[k]);
            fprintf(fo,"\n");
            //pozc++;
        //}
        //pozk++;
    }
    else //if(pozc<pozmax)
    {
        for (i = l; i <= r; i++)
        {
            q=v[l];
            v[l]=v[i];
            v[i]=q;
            permute(l+1, r,fo);
            q=v[l];
            v[l]=v[i];
            v[i]=q;
        }
    }
}

int main()
{
    int n,k,i;
    FILE*fi=fopen("permutari.in","r")
            ,*fo=fopen("permutari.out","w");
    fscanf(fi,"%d",&n);
    pozmax=k;
    /*for(i=0; i<k; i++)
        fscanf(fi,"%d",&poz[i]);*/
    permute(0,n-1,fo);
    fclose(fi);
    fclose(fo);
    return 0;
}