Cod sursa(job #1361984)

Utilizator fetti_danutzdezactivat fetti_danutz Data 26 februarie 2015 08:51:14
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.68 kb
#include <fstream>
#include <string>
#include <vector>
using namespace std;

ifstream fin ("combinari.in");
ofstream fout ("combinari.out");

int a[20];
bool s[20];
int n, p;

void Comb(int k);
void Write(int n);

int main()
{
    fin >> n >> p;
    Comb(1);
    fin.close();
    fout.close();
return 0;
}

void Comb(int k)
{
    if ( k == p + 1 )
    {
        Write(k - 1);
        return;
    }
    for ( int i = a[k - 1] + 1; i <= n; ++i )
    {
        a[k] = i;
        if ( !s[i] )
        {
            s[i] = true;
            Comb(k + 1);
            s[i] = false;
        }
    }
};


void Write(int n)
{
    for ( int i = 1; i <= p; ++i )
    fout << a[i] << ' ';
    fout << '\n';
};