Cod sursa(job #642279)

Utilizator mening12001Andrei Geogescu mening12001 Data 30 noiembrie 2011 20:58:37
Problema Subsir 2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream>
#include<iostream>
using namespace std;
ofstream h("subsir2.out");
struct data{long a,b,c,z;};
data d[5000];
long z,x;
void afis(int z)
{if(d[z].b!=0)
{afis(d[z].b);
h<<d[z].b<<" ";}}
int main()
{ifstream f("subsir2.in");
long a[5000],i,n,j,min=1000001;
f>>n;
for(i=1;i<=n;i++)
{f>>a[i];
d[i].a=1;
d[i].c=i;}
for(i=2;i<=n;i++)
for(j=i-1;j>=1;j--)
if(a[j]<a[i]&&d[j].a+1>d[i].a)
{d[i].a=d[j].a+1;
d[i].b=j;
d[j].z=i;
d[i].c=d[j].c;}
for(i=1;i<=n;i++)
if(d[i].b!=0&&d[i].a<min&&d[i].z==0)
{min=d[i].a;
z=i;}
h<<d[z].a<<"\n";
afis(z);
h<<z;
return 0;}