Pagini recente » Cod sursa (job #749882) | Cod sursa (job #1237822) | Cod sursa (job #1688804) | Cod sursa (job #2518078) | Cod sursa (job #1328741)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in("submultimi.in");
ofstream out("submultimi.out");
int st[10], k, n;
void init()
{
st[k]=-1;
}
int succesor()
{
if(st[k]<1)
{
st[k]++;
return 1;
}
return 0;
}
int valid()
{
return 1;
}
int solutie()
{
return(k==n);
}
void tipar()
{
int s=0;
for(int i=1; i<=k; i++)
s=s+st[i];
if(s==0) return;
for(int i=1; i<=k; i++)
if(st[i]!=0)
out<<i<<" ";
out<<endl;
}
void back( )
{
int as;
k=1;
init( );
while(k>0)
{
do {}
while((as=succesor())&&!valid());
if(as)
if(solutie())
tipar();
else
{
k++;
init( );
}
else
k--;
}
}
int main()
{
in>>n;
back();
return 0;
}