Cod sursa(job #503414)

Utilizator BlaugranasEnal Gemaledin Blaugranas Data 22 noiembrie 2010 20:59:01
Problema Combinari Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include<cstdio>
int valid(int st[50],int k)
{int i;
for(i=1;i<k;i++)
if(st[i]==st[k])
       return 0;
return 1;}

void tipar(int st[50],int k)
{int i;
for(i=1;i<=k;i++)
      printf("%d ",st[i]);
printf("\n");}

int main()
{int n,p,k=1,st[50];
freopen("combinari.in","rt",stdin);
freopen("combinari.out","wt",stdout);
scanf("%d%d",&n,&p);
st[k]=0;
while(k>0)
     {st[k]++;
     if(valid(st,k)==1)
             if(st[k]<=n)
                      if(k==p)
                              tipar(st,k);
                      else
                              {k++;
                              st[k]=st[k-1];}
             else
                      k--;}
fclose(stdin);
fclose(stdout);
return 0;}