Cod sursa(job #2683482)
Utilizator | Data | 11 decembrie 2020 15:13:08 | |
---|---|---|---|
Problema | Combinari | Scor | 10 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.9 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int n,p;
int GetBits(int mask)
{
int nr=0;
while(mask)
{
nr++;
mask&=mask-1;
}
return nr;
}
int main()
{
fin>>n>>p;
for(int mask=0;mask<(1<<n);mask++)
{
if(GetBits(mask)==p)
{
int k=0,t=0;
while(true)
{
if(mask & (1<<k))
{
fout<<k+1<<" ";
t++;
}
k++;
if(t==p)
break;
}
fout<<'\n';
}
}
}