Pagini recente » Istoria paginii utilizator/petras_roman | Cod sursa (job #315949) | Istoria paginii runda/td | Cod sursa (job #1284230) | Cod sursa (job #1158630)
#include <iostream>
#include <fstream>
#include <vector>
using namespace std;
vector <int> sol;
int n,p;
bool ap[20];
ifstream fin("combinari.in");
ofstream fout("combinari.out");
void afisare (){
for(int i=0;i<sol.size();i++)
fout<<sol[i]<<' ';
fout<<'\n';
}
void back (int k)
{
if(k==p){
afisare();
return;
}
for(int i=(k==0)?1:sol[k-1];i<=n;i++){
if(ap[i]==0){
sol.push_back(i);
ap[i]=1;
back(k+1);
sol.pop_back();
ap[i]=0;
}
}
}
int main()
{
fin>>n>>p;
back(0);
return 0;
}