Cod sursa(job #878247)

Utilizator ericqwAndreica Eric ericqw Data 14 februarie 2013 10:49:46
Problema Submultimi Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>
using namespace std;
ifstream f("submultimi.in");
ofstream g("submultimi.out");
int st[17],n,k,i;
void init()
{
  st[k]=st[k-1];
}
int suc()
{
 if (st[k]<n)
 {st[k]++;
 return 1;}
 else
 return 0;

}
int valid()
{ for (i=1;i<k;i++)
     if (st[i]==st[k]||st[i]>st[k])
     return 0;
     return 1;
}
int tip()
{
    for (i=1;i<=k;i++)
    g<<st[i]<<" ";
    g<<'\n';
}
int sol()
{
    if (k<=n)
    return 1;
    else
    return 0;
}
int main()
{
st[0]=0;
f>>n;
k=1;
init();
while (k>0)
    {
        while (suc())
        {
         if (valid())
           if (sol())
           {
           tip();
           k++;
           init();}
        }
        k--;}
return 0;
}