Pagini recente » Cod sursa (job #1211713) | Cod sursa (job #2452793) | Cod sursa (job #2511406) | Cod sursa (job #2307359) | Cod sursa (job #1517220)
#include<iostream>
#include<fstream>
#include<stdio.h>
int k, n,x[19],i,as,ev,d;
using namespace std;
void valid(int x[19], int k, int &ev)
{
int i;
ev = 1;
for (i = 1; i <= k - 1; i++)
if (x[i] == x[k])
ev = 0;
}
void succ(int k, int x[19], int &as)
{
if (x[k]<n) {
as = 1;
x[k]++;
}
else {
as = 0;
}
}
int main() {
ifstream f("combinari.in");
ofstream g("combinari.out");
f >> n;
f >> d;
k = 1;
x[k] = 0;
while (k>0) {
do {
succ(k, x, as);
if (as)
valid(x, k, ev);
} while (as && !ev);
if (as) {
if (k == d)
{
for (i = 1; i <= k; i++)
g << x[i] << ' ';
g << '\n';
}
else
{
k++;
x[k] = x[k - 1];
}
}
else
k--;
}
return 0;
}