Pagini recente » Cod sursa (job #2223812) | Cod sursa (job #2865690) | Cod sursa (job #1667679) | Cod sursa (job #1222882) | Cod sursa (job #2217719)
#include<stdio.h>
#define MAXN 16
void bkt(int level); ///BackTracking solution
void bit_op(); ///BitWise solution
int sol[MAXN+1];
int N;
FILE*fin,*fout;
int main()
{
fin=fopen("submultimi.in","r");
fout=fopen("submultimi.out","w");
fscanf(fin,"%d",&N);
///bkt(1);
bit_op();
}
void bkt(int level)
{
if(level>1 && level<=N+1)
{
for(int i=1;i<=level-1;i++)
{
fprintf(fout,"%d ",sol[i]);
}
fprintf(fout,"\n");
}
int i;
for(i=sol[level-1]+1;i<=N;i++)
{
sol[level]=i;
bkt(level+1);
}
}
void bit_op()
{
int mask=(1<<N)-1;
for(int i=1;i<=mask;i++)
{
int ci=i;
for(int j=1;j<=N;j++)
{
if(ci%2==1)
{
fprintf(fout,"%d ",j);
}
ci/=2;
}
fprintf(fout,"\n");
}
}