Pagini recente » Cod sursa (job #689974) | Cod sursa (job #2998534) | Cod sursa (job #1571787) | Cod sursa (job #2112323) | Cod sursa (job #1122932)
#include <iostream>
#include <fstream>
using namespace std;
fstream fin("submultimi.in",ios::in);
fstream fout("submultimi.out",ios::out);
int i,j,k,n,st[17];
void init()
{
st[k]=0;
}
int Am_succesor(int &AS)
{
if(st[k]<n)
{
st[k]++;
AS=1;
return 1;
}
AS=0;
return 0;
}
int E_Valid()
{
for(int i=1 ; i<k; i++)
if(st[i] >= st[k])
return 0;
return 1;
}
void tipar()
{
for(int i=1; i<=k; i++)
fout<<st[i]<<' ';
fout<<'\n';
}
void back()
{
int AS;
k=1; init();
while(k)
{
do{}while(Am_succesor(AS) && !E_Valid());
if(AS)
{tipar();
if(k!=n)
{k++; init();}
}
else
k--;
}
}
int main()
{
fin>>n;
fin.close();
back();
}