Pagini recente » Cod sursa (job #2805757) | Cod sursa (job #2829025) | Cod sursa (job #2044691) | Monitorul de evaluare | Cod sursa (job #1131566)
#include <stdio.h>
int n,p,i,x[20];
using namespace std;
void citire()
{
scanf("%d %d",&n,&p);
}
void afisare(int x[], int k)
{
int i;
for(i=1;i<k;i++)
{
printf("%d ",x[i]);
}
printf("\n");
}
int verificare(int x[],int k)
{
if(k>1 && !(x[k-1]<x[k]))
return 0;
else
return 1;
}
void combinari(int x[],int k)
{
int i;
if(k==p+1)
afisare(x,k);
else
{
for(i=1;i<=n;i++)
{
x[k]=i;
if(verificare(x,k))
combinari(x,k+1);
}
}
}
int main()
{
freopen ("combinari.in","r",stdin);
freopen ("combinari.out","w",stdout);
citire();
combinari(x,1);
fclose(stdin);
}