Cod sursa(job #1377526)

Utilizator Corina1997Todoran Ana-Corina Corina1997 Data 5 martie 2015 22:23:03
Problema Submultimi Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include <fstream>
using namespace std;

ifstream is("submultimi.in");
ofstream os("submultimi.out");

int n, x[20], m;
bool a[20];
void Perm( int k );
void Write( int k);

int main()
{
    is >> n >> m;
    Perm(1);
    is.close();
    os.close();
    return 0;
}

void Perm( int k )
{
    if ( k <= n && k > 1 )
        Write( k - 1 );
    if ( k > n )
        return;
    for ( int i = 1; i <= n; i++ )
    {
        x[k] = i;
        if ( a[i] == false && x[k] > x[k-1] )
        {
            a[i] = true;
            Perm(k+1);
            a[i] = false;
        }
    }
}

void Write( int k )
{
    for ( int i = 1; i <= k; i++ )
        os << x[i] << ' ';
    os << '\n';
}