Pagini recente » Istoria paginii runda/valicaroom2/clasament | Istoria paginii runda/bairam_aladin/clasament | Cod sursa (job #1681092) | Autentificare | Cod sursa (job #1568664)
#include<cstdio>
using namespace std;
int main()
{
freopen("submultimi.in","r",stdin);
freopen("submultimi.out","w",stdout);
int n;
scanf("%d",&n);
int nrsub=1<<n;
for(int i=1;i<nrsub;++i)
{
for(int j=1;j<=n;++j)
if(i&(1<<(j-1)))
printf("%d ",j);
printf("\n");
}
}
//numerele din baza 10 -> baza 2 daca bit-ul j face parte din nr i ex:101->bit 0 si bit 2 ->submultimea 1 3
//2 la n submultimi
//merge deoarece nr in baza 2 sunt unice atunci sigur avem 2 la n sol(minus sub vida)