Pagini recente » Cod sursa (job #2780985) | Cod sursa (job #2974501) | Cod sursa (job #1247311) | Cod sursa (job #2975053) | Cod sursa (job #1098598)
#include<fstream>
using namespace std;
#define N 20
ifstream f("combinari.in");
ofstream g("combinari.out");
void print(int A[], int n)
{
for(int i = 1; i <= n; i++)
{
g << A[i] << " ";
}
g << "\n";
}
void perm(int A[], int i, int n, int m, int frecv[])
{
for(int j = max(A[i - 1], 1); j <= m; j++)
{
A[i] = j;
if (!frecv[j])
{
frecv[j]++;
if (i == n)
{
print(A, n);
}
else
{
perm(A, i + 1, n, m, frecv);
}
frecv[j]--;
}
}
}
int main()
{
int A[N], n, frecv[N], m;
f >> m >> n;
for(int i = 0; i <= m; i++)
{
frecv[i] = 0;
}
perm(A, 1, n, m, frecv);
}