Pagini recente » Cod sursa (job #886234) | Cod sursa (job #1122654) | Cod sursa (job #2922722) | Cod sursa (job #1973229) | Cod sursa (job #1503222)
#include <iostream>
#include <climits>
using namespace std;
bool isValid(int st[], int k) {
for (int i = 1; i < k; i++) {
if (st[i] == st[k]) {
return false;
}
}
return true;
}
void print(int st[], int n) {
for (int i = 1; i <= n; i++) {
cout << st[i] << " ";
}
cout << "\n";
}
int main() {
// freopen("permutari.in", "r", stdin);
// freopen("permutari.out", "w", stdout);
int n, k, st[30], level;
cin >> n >> k;
level = 1;
st[1] = 0;
while (level > 0) {
st[level]++;
if (st[level] == n + 1) {
level--;
} else {
if (isValid(st, level)) {
level++;
st[level] = 0;
}
if (level == k + 1) {
print(st, k);
level--;
}
}
}
return 0;
}