Cod sursa(job #1570087)
| Utilizator | Data | 16 ianuarie 2016 10:48:26 | |
|---|---|---|---|
| Problema | Submultimi | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.62 kb |
#include <fstream>
#include <stack>
using namespace std;
ifstream fin("submultimi.in");
ofstream fout("submultimi.out");
#define N 20
int top;
int st[N];
int n ;
void backt( int k )
{
if( k == n + 1 )
{
if( top != 0 )
{
for( int i = 1 ; i<= top ; ++i )
fout<<st[i] << ' ';
fout << '\n';
}
}
else
{
///nu alegem elementul
backt( k + 1 );
/// alegem elementul
st[ ++top ] = k ;
backt( k+1 );
--top;
}
}
int main()
{
fin>>n;
backt(1);
return 0;
}
