Pagini recente » Cod sursa (job #2835972) | Cod sursa (job #246509) | Cod sursa (job #2831098) | Cod sursa (job #2006361) | Cod sursa (job #2408764)
#include<fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int n,v[20],k,i,j,n0,n1;
int main()
{
fin>>n>>k;
/*for(i=1;i<=k;i++)
v[i]=i;
do
{
for(i=1;i<=k;i++)
fout<<v[i]<<" ";
fout<<"\n";
i=k;
while(i>=1 && v[i]==n-k+i)
i--;
if(i==0)
break;
v[i]++;
for(j=i+1;j<=k;j++)
v[j]=v[j-1]+1;
}while(1);*/
for(i=1;i<=k;i++)
v[i]=1;
do
{
for(i=1;i<=n;i++)
if(v[i]==1)
fout<<i<<" ";
fout<<"\n";
n0=0;
n1=0;
for(i=n;i>=1;i--)
if(v[i]==1 && n0>0)
{
n1++;
v[i]=0;
for(j=i+1;j<=i+n1;j++)
v[j]=1;
break;
}
else
{
if(v[i]==0)
n0++;
else
n1++;
v[i]=0;
}
if(i==0)
break;
}while(1);
fin.close();
fout.close();
return 0;
}