Pagini recente » Borderou de evaluare (job #71358) | Borderou de evaluare (job #1649356) | Borderou de evaluare (job #1208664) | Borderou de evaluare (job #235605) | Cod sursa (job #3207309)
/*
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("permutari.in");
ofstream out("permutari.out");
int v[10];
int n, k;
bool ok(int poz)
{
for(int i = 1; i<poz; i++)
{
if(v[i] == v[poz])
{
return false;
}
}
return true;
}
void afis()
{
for(int i = 1; i<=n; i++)
{
out<<v[i]<<" ";
}
out<<'\n';
}
void bt(int poz)
{
for(int i = 1; i<=n; i++)
{
v[poz] = i;
if(ok(poz) == true)
{
if(poz == n)
{
afis();
}
else
{
bt(poz+1);
}
}
}
}
int main()
{
in>>n>>k;
bt(1);
return 0;
}
*/
#include <bits/stdc++.h>
using namespace std;
ifstream in ("combinari.in");
ofstream out ("combinari.out");
const int NMAX=20;
int n,k;
int v[NMAX];
void afis()
{
for(int i=1;i<=k;i++)
out<<v[i]<<" ";
out<<'\n';
}
void combinari(int poz)
{
for(int i=v[poz-1]+1;i<=n;i++)
{
v[poz]=i;
if(poz==k)
{
afis();
}
else
combinari(poz+1);
}
}
int main()
{
//v[0]=1;
in>>n>>k;
combinari(1);
return 0;
}