Pagini recente » Cod sursa (job #2797135) | Cod sursa (job #547001) | Cod sursa (job #2865994) | Cod sursa (job #2533676) | Cod sursa (job #2220505)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
int n, m;
int subset[20];
void Print(void)
{
for (int i = 1; i <= m; i++)
{
fout << subset[i] << ' ';
}
fout << '\n';
}
void Combinari()
{
for (int i = 1; i <= m; i++)
{
subset[i] = i;
}
Print();
int index = m;
while (subset[1] != n - m + 1)
{
if (subset[index] < n - m + index)
{
subset[index]++;
}
else
{
while (subset[index] == n - m + index)
{
index--;
}
subset[index]++;
index++;
for (index; index <= m; index++)
{
subset[index] = subset[index - 1] + 1;
}
index--;
}
Print();
}
}
int main(void)
{
fin >> n >> m;
Combinari();
}