Cod sursa(job #165638)

Utilizator toni2007Pripoae Teodor Anton toni2007 Data 26 martie 2008 14:12:00
Problema Combinari Scor 100
Compilator c Status done
Runda Arhiva educationala Marime 0.58 kb
#include <stdio.h>
#define N 20
int n,k;
int pr[N];
void scan(){
	freopen("combinari.in","r",stdin);
	freopen("combinari.out","w",stdout);
	scanf("%d%d",&n,&k);
}
void solve(){
	int i,x,j,y,nr,s;
	x=2<<n-1;
	for (i=0;i<x;++i){
		y=i;nr=n;s=0;
		while (y){
			--nr;
			pr[nr]=y%2;
			y/=2;
		}
		for (j=0;j<n;++j)
			if (pr[j]==0)
				++s;
		if (s==k){
			for (j=0;j<n;++j)
				if (pr[j]==0)
					printf("%d ",j+1);
			printf("\n");
		}
	}
}
void std_close(){
	fclose(stdin);
	fclose(stdout);
}
int main(){
	scan();
	solve();
	std_close();
	return 0;
}