Pagini recente » Cod sursa (job #1352131) | Cod sursa (job #1427300) | Cod sursa (job #1582088) | Cod sursa (job #1427342) | Cod sursa (job #158299)
Cod sursa(job #158299)
#include<stdio.h>
int st[10];
int n,k,p;
int valid(int k)
{
int i;
for(i=0;i<=k-1;i++)
if((st[k]==st[i])||st[i]>=st[i+1]) return 0; //Verific aparitii precedende ale numarului
return 1;
}
int main()
{
int ev;
freopen("combinari.in","r",stdin);
freopen("combinari.out","w",stdout);
scanf("%d %d",&n,&p);
k=1;st[k]=0;
while(k>0)
{ do{
st[k]++;
ev=valid(k);
} while((!ev)&&(st[k]<=n));
if((ev)&&(st[k]<=n))
{ if(k==p)
{ for(int i=1;i<=k;i++) printf("%d ",st[i]);
printf("\n");
}
else
{ k++; st[k]=0;}
} else k--;
}
return 0;
}