Cod sursa(job #217769)
Utilizator | Dobrescu-Balaur Mihnea mihneadb | Data | 30 octombrie 2008 10:11:25 |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.54 kb |
#include<stdio.h>
char sol[50];
int n,p;
void afisare(){
printf("%s\n",sol);
}
void bkt(int k, int poz, int val){
if (k>p){
sol[poz]='\0';
afisare();
return;
}
for(int i=val+1;i<=n;++i){
if(i<10){
sol[poz]=i+'0';
sol[poz+1]=' ';
bkt(k+1,poz+2,i);
}
else{
sol[poz]='1';
sol[poz+1]=(i-10)+'0';
sol[poz+2]=' ';
bkt(k+1,poz+3,i);
}
}
}
int main(){
freopen("combinari.in","r",stdin);
freopen("combinari.out","w",stdout);
scanf("%d%d",&n,&p);
bkt(1,0,0);
return 0;
}