Combinări

Să se genereze toate combinările de N luate câte K în ordine lexicografică

 

#include

int n,st25,i,k;

void initializare ()

{ for(i=1;i<=25;i++)

st[i]=0;}

void tiparire (int p)

{ for(i=1;i<=p;i++)

{cout<

cout<

int validare (int p)

{if ( p>1 && st[p]<=st[p-1]) return 0;

else return 1; }

void back (int p)

{int val;

for( val=1; val<=n; val++)

{st[p]=val;

if (validare(p))

if(p==k)

tiparire(p);

else back(p+1);}}

int main ()

{cin>>n>>k; 

back(1);

return 0;}