Pagini recente » Cod sursa (job #2255478) | Cod sursa (job #476418) | Cod sursa (job #2422853) | Cod sursa (job #2460178) | Cod sursa (job #1791488)
#include <vector>
#include <algorithm>
#include <fstream>
//#include <iostream>
using namespace std;
ifstream cin("submultimi.in");
ofstream cout("submultimi.out");
inline bool unu(vector <bool> b)
{
for (int i=0; i<b.size(); i++)
{
if (!b[i]) return false;
}
return true;
}
inline bool nb(vector <bool> &x)
{
if (unu(x)) return false;
vector<bool>::reverse_iterator p=find(x.rbegin(),x.rend(),false);
*p=true;
fill(x.rbegin(),p,false);
return true;
}
main()
{
int n;
cin >> n;
vector <bool> a(n);
while (nb(a))
{
for (int i=0; i<a.size(); i++)
{
if (a[i]) cout << i+1 << ' ';
}
cout << '\n';
}
}