Cod sursa(job #348752)
Utilizator | Data | 16 septembrie 2009 19:21:06 | |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.44 kb |
#include<fstream>
#define dmax 20
using namespace std;
ifstream in("combinari.in");
ofstream out("combinari.out");
int n,k,x[dmax];
bool t[dmax];
void bk(int p)
{ int i;
if(p==k+1)
{ for(i=1;i<=k;i++)
out<<x[i]<<" ";
out<<'\n';
}
else
{ for(i=x[p-1]+1;i<=n;i++)
if(!t[i])
{ x[p]=i;
t[i]=1;
bk(p+1);
t[i]=0;
}
}
}
int main()
{ in>>n>>k;
in.close();
bk(1);
out.close();
return 0;
}