Pagini recente » Istoria paginii utilizator/psycho21r | Monitorul de evaluare | Istoria paginii utilizator/madalomar | Profil raulFTW | Cod sursa (job #362246)
Cod sursa(job #362246)
#include <iostream>
#include <fstream>
#include <vector>
#include <iterator>
std::ifstream fin("permutari.in");
std::ofstream fout("permutari.out");
std::vector<int> c;
int n, k;
void citire()
{
//fin >> n >> k;
n = 4; k = 3;
}
void afisare()
{
copy(c.begin(), c.end(), std::ostream_iterator<int>(fout, " "));
fout << "\n";
}
bool check(int i)
{
for (int j = 0; j < i; j++)
{
if (c[i] <= c[j]) return 0;
}
return 1;
}
void gen(int i)
{
if (i == k) afisare();
else
{
for (int j = 1; j <= n; j++)
{
c.push_back(j);
if (check(i)) gen(i + 1);
c.pop_back();
}
}
}
int main()
{
citire();
gen(0);
}