Pagini recente » Cod sursa (job #1231165) | Cod sursa (job #2673473) | Cod sursa (job #424415) | Cod sursa (job #2691980) | Cod sursa (job #1671967)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("combinari.in");
ofstream out("combinari.out");
int n, k, v[19];
void afisare(){
for(int i=1; i<=k; i++){
out<<v[i]<<" ";
}
out<<"\n";
}
bool sol(int x){
if(x==k){
return true;
}
return false;
}
bool valid(int x){
for(int i=1; i<x; i++){
if(v[i]>v[i+1]||v[i]==v[k]||v[i]==v[i+1])return false;
}
return true;
}
void bk(int x){
for(int i=1; i<=n; i++){
v[x]=i;
if(valid(x)){
if(sol(x)){
afisare();
}else{
bk(x+1);
}
}
}
}
int main(){
in>>n>>k;
bk(1);
return 0;
}