Cod sursa(job #1339348)
Utilizator | Constantin Mihai mihai.constantin | Data | 10 februarie 2015 20:43:31 |
---|---|---|---|
Problema | Combinari | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <iostream>
#include <cstdio>
#define Dmax 20
using namespace std;
int N,M; int c[Dmax];
void GENERARE(int);
void AFISARE(void);
void GENERARE(int k)
{
if(k==M+1) AFISARE();
else
for(int i=c[k-1]+1; i<=N-M+k; i++)
{
c[k]=i; GENERARE(k+1);
}
}
void AFISARE()
{
for(int i=1; i<=M; i++) printf("%d ",c[i]);
printf("\n");
}
int main()
{
freopen("combinari.in", "r", stdin);
freopen("combinari.out", "w", stdout);
scanf("%d%d",&N,&M);
GENERARE(1);
return 0;
}