Cod sursa(job #2026936)
Utilizator | Data | 25 septembrie 2017 12:59:13 | |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.59 kb |
#include <iostream>
#include <fstream>
using namespace std;
int n,k,fol[20],comb[20],poz;
ifstream f("combinari.in");
ofstream g("combinari.out");
void afisare()
{
for(int j=1; j<=k; j++)
g<<comb[j]<<" ";
g<<'\n';
}
void gen(int poz)
{
if(poz>k) afisare();
else
{
for(int i=1; i<=n; i++)
if(!fol[i] && comb[poz-1]<i)
{
comb[poz]=i;
fol[i]=1;
gen(poz+1);
fol[i]=0;
}
}
}
int main()
{
f>>n>>k;
gen(1);
return 0;
}