Cod sursa(job #303264)

Utilizator ssergiussSergiu-Ioan Ungur ssergiuss Data 9 aprilie 2009 18:11:06
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<algorithm>
using namespace std;

int n,k;

int main(){
    int i,vf,aux,st[25];

    freopen("combinari.in","r",stdin);
    freopen("combinari.out","w",stdout);

    scanf("%d%d",&n,&k);
    for(st[vf=1]=1; vf; ){
		if(vf==k){
			for(i=1; i<=k; ++i)
                printf("%d ",st[i]);
            printf("\n");}
		aux=st[vf];
		if(vf==k){
			if(st[vf]<n)
				++st[vf];
			else if(st[vf]==n){
				--vf;
				for(; st[vf]+1>n-k+vf; --vf);
				++st[vf];}}
		else if(aux+1<=n-k+vf+1)
			st[++vf]=aux+1;
		else if(aux+1>n-k+vf+1)
			--vf;}
    return 0;}