Pagini recente » Cod sursa (job #966593) | Cod sursa (job #1828849) | Cod sursa (job #637893) | Cod sursa (job #1351224) | Cod sursa (job #2328357)
#include <fstream>
using namespace std;
ifstream f("permutari.in");
ofstream g("permutari.out");
int a[10], n, m, k, i, sol[10], nrs;
bool c[10];
void afis()
{
nrs++;
if (nrs == a[k])
{
k++;
for (int i = 1; i <= n; i++)
g << sol[i] <<' ';
g << '\n';
}
}
void bkt(int p)
{
if (p - 1 == n)
{
afis();
return;
}
for (int i = 1; i <= n; i++)
if (!c[i])
{
sol[p] = i;
c[i] = true;
bkt(p+1);
c[i] = false;
}
}
int main()
{
int j;
f >> n >> m;
k = 1;
for (j = 1; j <= m; j++)
{
f >> a[j];
}
bkt(1);
f.close();
g.close();
return 0;
}