Cod sursa(job #1097864)
| Utilizator | Data | 4 februarie 2014 01:08:12 | |
|---|---|---|---|
| Problema | Combinari | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.51 kb |
/* Generare combinari Backtrack */
#include <cstdio>
int N, K, X[20];
void BackTrack(int P)
{
if (P == K + 1)
{
for (int i = 1; i <= K; i++) printf("%d ", X[i]);
printf("\n");
}
else
{
for (int i = X[P - 1] + 1; i <= N; i++)
{
X[P] = i;
BackTrack(P + 1);
}
}
}
int main()
{
freopen("combinari.in","r",stdin);
freopen("combinari.out","w",stdout);
scanf("%d %d", &N, &K);
BackTrack(1);
}
