Pagini recente » Cod sursa (job #577921) | Cod sursa (job #242749) | Cod sursa (job #938506) | Cod sursa (job #1233659) | Cod sursa (job #1505301)
#include <cstdio>
using namespace std;
int n,i,j,st[20],k,as,ev;
void init(){
st[k]=0;
}
bool succesor(){
if(st[k]<n){
st[k]++;
return 1;
}
return 0;
}
bool valid(){
if(k>=2){
if(st[k]<st[k-1])
return 0;
}
for(i=1;i<k;i++)
if(st[i]==st[k])
return 0;
return 1;
}
void tipar(){
for(i=1;i<=k;i++)
printf("%d ",st[i]);
printf("\n");
}
int main()
{
freopen("submultimi.in","r",stdin);
freopen("submultimi.out","w",stdout);
scanf("%d",&n);
k=1;
init();
while(k){
do{
as=succesor();
if(as)
ev=valid();
}while(!(as&&ev||!as));
if(as){
tipar();
k++;
init();
}
else k--;
}
return 0;
}