Pagini recente » Cod sursa (job #2773696) | Cod sursa (job #203292) | Cod sursa (job #564399) | Cod sursa (job #2505755) | Cod sursa (job #900287)
Cod sursa(job #900287)
#include<stdio.h>
using namespace std;
unsigned int x[20],n,m;
unsigned int cont(unsigned int k){
for(unsigned int i=1;i<k;i++)
if(x[i]==x[k])
return 0;
if(k>1)
if(x[k-1]>x[k])
return 0;
return 1;
}
unsigned int sol(unsigned int k){
if(k==m)
return 1;
return 0;
}
void afis(unsigned int k){
for(unsigned int i=1;i<=k;i++)
printf("%d ",x[i]);
printf("\n");
}
void bkt(){
unsigned int k=1;
x[k]=0;
while(k>0)
if(x[k]<n){
x[k]++;
if(cont(k))
if(sol(k))
afis(k);
else{
k++;x[k]=0;}
}
else
k--;
}
int main (){
freopen("combinari.in","r",stdin);
freopen("combinari.out","w",stdout);
scanf("%d%d",&n,&m);
bkt();
return 0;
}