Pagini recente » Cod sursa (job #789020) | Cod sursa (job #1312897) | Cod sursa (job #1002343) | Cod sursa (job #125958) | Cod sursa (job #2124889)
#include<fstream>
using namespace std;
int n,st[100],v[10000],counter=0,m,temp;
ifstream cin("combinari.in");
ofstream cout("combinari.out");
void print(int nivel)
{
for(int i=1;i<=nivel;++i)
cout<<st[i]<<" ";
cout<<"\n";
}
bool valid(int nivel)
{
for(int i=1;i<=nivel-1;++i)
if(st[i]==st[nivel])
return false;
return true;
}
void backtr(int nivel)
{
for(int i=st[nivel-1]+1;i<=n;++i)
{
st[nivel]=v[i];
if(valid(nivel))
{
if(nivel==m)
{
print(nivel);
}
else
{
backtr(nivel+1);
}
}
}
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
{
v[i]=i;
}
backtr(1);
}