You are on page 1of 2

#include<iostream.

h>
int n, ns,sol[20];
void afis(int l)
{ int i;
ns++;
for(i=1;i<=l;i++) cout<<sol[i]<<" ";
cout<<endl;
}
void back(int i, int sp)
{ int j;
if (sp==n && i>2) afis(i-1);
else for(j=sol[i-1]+1;j<=n-sp;j++)
if (j==sol[i-1]+1 || i==1)
{
sol[i]=j;
back(i+1, sp+j);
}
}
void main()
{
cin>>n;
ns=0;
back(1,0);
if (ns==0) cout<<"Imposibil";
}

#include<iostream.h>
#include<conio.h>
int nr=0,n,i,x,y,s;
void main()
{clrscr();
cout<<n= ;cin>>n;
for(i=1;i<=n/2;i++)

{s=0;x=i;
while(s<n) {s=s+x; x=x+1;}
if(n==s) {nr++;
cout<<i;
for(y=i+1;y<=x-1;y++)
cout<<+<<y;
cout<<endl; }

if(nr==0) cout<<nici o solutie;


getch();}

You might also like