Pagini recente » Cod sursa (job #826469) | Cod sursa (job #1918838) | Cod sursa (job #1120559) | Cod sursa (job #2677608) | Cod sursa (job #1391373)
#include<stdio.h>
#include<stdlib.h>
FILE *fIn, *fOut;
int sol[18];
bool validare(int poz)
{
for (int i = 0; i < poz; i++)
if (sol[i] == sol[poz] || sol[i] > sol[poz])
return false;
return true;
}
void combinari(int n, int k,int poz)
{
if (poz == n-1)
{
for (int i = 0; i < k; i++)
fprintf(fOut,"%d ", sol[i]);
fprintf(fOut,"\n");
}
for (int i = 1; i <= n; i++)
{
sol[poz] = i;
if (validare(poz))
combinari(n, k, poz + 1);
}
}
void main()
{
fIn = fopen("combinari.in", "r");
fOut = fopen("combinari.out", "w");
int n;
int k;
fscanf(fIn, "%d", &n);
fscanf(fIn, "%d", &k);
combinari(n,k,0);
fclose(fIn);
fclose(fOut);
}