Pagini recente » Cod sursa (job #3258320) | Cod sursa (job #613410) | Cod sursa (job #126246) | Cod sursa (job #1018124) | Cod sursa (job #409685)
Cod sursa(job #409685)
#include<fstream>
int v[10000],n,i,L[1000],max,mx,k,t;
int main(){
fstream fi("scmax.in",ios::in);
fstream fo("scmax.out",ios::out);
for(i=1;i<=n;i++) fi>>v[i];
L[n]=1; //subsir maxim de lung 1
for(k=n-1;k>0;k--)
{mx=0;
for(i=k+1;i<=n;i++)
if(v[i]>=v[k] && L[i]>mx)
mx=L[i];
L[k]=mx+1;
if(L[k]>max)
{max=L[k];
t=k;}
}
fo<<max<<" ";
//afisarea subsirului
fo<<v[t]<<" ";
for(i=t+1;i<=n;i++)
if ((v[i]>=v[t]) && (L[i]==max-1))
{fo<<v[i]<<" ";
max--;}
fo.close();
return 0;
}