Cod sursa(job #1841551)
Utilizator | Data | 5 ianuarie 2017 18:48:49 | |
---|---|---|---|
Problema | Submultimi | Scor | 70 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.77 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("submultimi.in");
ofstream g("submultimi.out");
int n, stiv[100000];
void tipar(int nn)
{
for(int i=1; i<=nn; i++)
g<<stiv[i]<<" ";
g<<endl;
}
bool verif(int nn)
{
for(int i=1; i<nn; i++)
for(int j=i+1; j<=nn; j++)
if(stiv[i]>=stiv[j])
return false;
return true;
}
void bk(int p)
{
if(p>n)
return;
for(int i=p; i<=n; i++)
{
stiv[p]=i;
if(verif(p))
{
tipar(p);
bk(p+1);
}
}
}
int main()
{
f>>n;
bk(1);
}