Pagini recente » Cod sursa (job #1432199) | Cod sursa (job #2149943) | Cod sursa (job #3163262) | Cod sursa (job #2865947) | Cod sursa (job #1989958)
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("submultimi.in");
ofstream cout("submultimi.out");
void submult(int n, vector<int> &sol, vector<bool> &used){
for(auto &x : sol)
cout << x << ' ';
int lim = 0;
if(sol.size())
lim = sol.back();
if(lim)
cout << '\n';
else
lim += 1;
for(int i = lim; i <= n; i++){
if(used[i])
continue;
sol.push_back(i);
used[i] = true;
submult(n, sol, used);
used[i] = false;
sol.pop_back();
}
}
int main(){
int n;
vector<int> sol;
vector<bool> used(n + 1, false);
cin >> n;
submult(n, sol, used);
}