All pastes #349249 Raw Edit

ravehanker

public text v1 · immutable
·published 2007-02-10 17:39 UTC
rendered paste body
#include <iostream>
#include <memory.h>
#include <cassert>
using namespace std;
#define	REP(i,n)	for(int i=0;i<(n);++i)
#define FOR(i,a,b)	for(int i=(a);i<=(b);++i)
#define FORD(i,a,b)	for(int i=(a);i>=(b);--i)
#define FIT(i,c,t)	for(t::iterator i=(c).begin();i!=(c).end();++i)
#define SET(arr,val)	memset((arr),(val),sizeof(arr))

int K, N;

void print_comb(int *inp, int *out, int n, int k) 
{
	if(n<=0 && k!=0) return;
	if (k==0) {
		REP(i, K) {
			--out;
			cout<<*out<<" ";
		}
		cout<<endl;
		return;
	}
	print_comb(inp+1, out, n-1, k);
	*out = *inp;
	print_comb(inp+1, out+1, n-1, k-1);
}


int main()
{
	cin>>N;
	int inp[N];
	int out[N+2];
	REP(i, N) {
		inp[i] = i+1;
	}
	cin>>K;
	print_comb(inp, out, N, K);
	return 0;
}