Cod sursa(job #1082097)

Utilizator exclamatieDica Florin Sebastian exclamatie Data 14 ianuarie 2014 10:26:35
Problema Generare de permutari Scor 80
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <iostream>
#include <fstream>

using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
int n , st[9] ,k ,o, g=0;
int init()
{
    st[k]=0;
}
int succ()
{
    if(st[k]<n)
    {
        st[k]++;
        return 1;
    }
    else return 0;
}
int valid()
{
    for(int i=1;i<k;i++)
    if(st[k]==st[i]) return 0;
    return 1;
}
int solutie()
{
    if(k==n)
    {
    return 1;
    }
    else return 0;

}
int tipar()
{
    for(int i=1;i<=k;i++)
    out<<st[i]<<" ";
    out<<endl;
}
int back()
{
    int AS;
    k=1;
    init();
    while(k)
    {
    do{}
    while((AS=succ())&&(!valid()));
    if(AS==1) if(solutie()) tipar();
    else {k++; init();}
    else k--;
    }
}
int main()
{
    in>>n;
    back();
}