Cod sursa(job #643980)
| Utilizator | Data | 4 decembrie 2011 23:30:37 | |
|---|---|---|---|
| Problema | Subsir 2 | Scor | 18 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.43 kb |
#include<fstream>
#include<iostream>
using namespace std;
ofstream h("subsir2.out");
ifstream f("subsir2.in");
int main()
{long n,a[5000],d[5000],i,j,p[5000],min=1000001;
f>>n;
f>>a[1];
d[1]=1;
for(i=2;i<=n;i++)
{f>>a[i];
d[i]=1;
p[i]=i;
for(j=1;j<i;j++)
{if(d[j]+1>=d[i]&&a[i]>=a[j])
{d[i]=d[j]+1;
p[j]=i;}
if(a[i]>=a[j])
p[j]=i;}}
for(i=1;i<=n;i++)
if(d[i]<min&&p[i]==i&&d[i]>1)
min=d[i];
h<<min;
return 0;}