Pagini recente » Cod sursa (job #3315832) | Cod sursa (job #3346231) | Cod sursa (job #3323115) | Cod sursa (job #1834063) | Cod sursa (job #3355221)
#include <fstream>
#include <vector>
using namespace std;
ifstream fin("combinari.in");
ofstream fout("combinari.out");
void backtrack(int start,int n,int k,vector<vector<int>>& result,vector<int>& current){
if(current.size()==k){
result.push_back(current);
return;
}
for(int i=start;i<=n;i++){
current.push_back(i);
backtrack(i+1,n,k,result,current);
current.pop_back();
}
}
void combinations(int n,int k){
vector<vector<int>> result;
vector<int> current;
backtrack(1,n,k,result,current);
for(int i=0;i<result.size();i++){
for(int j=0;j<result[i].size();j++)
fout<<result[i][j]<<" ";
fout<<endl;
}
}
int main(){
int n,k;
fin>>n>>k;
combinations(n,k);
return 0;
}