Cod sursa(job #808444)

Utilizator alextudose95Tudose Stefan Alexandru alextudose95 Data 6 noiembrie 2012 19:42:00
Problema Subsir 2 Scor 2
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
# include <iostream>
# include <fstream>
using namespace std;
ifstream f("subsir2.in");
ofstream g("subsir2.out");
int main()
{
    int l[5000],r[5000],x[5000],i,j,n,m,mi,mr;
    f>>n;
    for(i=1; i<=n; i++) f>>x[i];
    r[i] = l[i] = 1; l[1] = 1;
    for(i=2; i<=n; i++)
    for(j=1; j<i; j++)
            if(x[j] <= x[i] && l[i]<l[j]+1) l[i] = l[j]+1;
    r[n] = 1;
    for(i=n-1; i>=1; i--)
    for(j=i+1; j<=n; j++)
            if(x[i] <= x[j] && r[i]<r[j]+1)
    r[i] = r[j]+1;
    for(i=1; i<=n; i++) if(!m || m>l[i]+r[i]-1) m = l[i] + r[i] -1, mi=i;
    g<<m<<endl;
    for(i=mi; i<=n; i++) if(l[i]+r[i]-1 == m && x[mi] <= x[i])
    g<<i<<' ', mi=i;
    return 0;
}