Cod sursa(job #2132343)
| Utilizator | Data | 15 februarie 2018 18:28:23 | |
|---|---|---|---|
| Problema | Combinari | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.69 kb |
#include <iostream>
#include <fstream>
using namespace std;
int a[100],b[100];
ifstream f("combinari.in");
ofstream g("combinari.out");
void back(int k,int m,int l)
{
if(k-1 == l)
{
for(int i = 1;i <= l;i++)
{
g<<a[i]<<" ";
}
g<<endl;
}
else
{
for(int i = a[i-1] + 1;i <= m;i++)
{
if(b[i] == 0 && a[k-1] < i)
{
a[k] = i;
b[i] = 1;
back(k+1,m,l);
b[i]=0;
}
}
}
}
int main()
{
int m,n;
f>>m>>n;
back(1,m,n);
return 0;
}
