Pagini recente » Cod sursa (job #1140906) | Cod sursa (job #50466) | Cod sursa (job #2761543) | Cod sursa (job #1648440) | Cod sursa (job #898192)
Cod sursa(job #898192)
#include <iostream>
#include <fstream>
using namespace std;
int n,l[100001];
long long s[100001];
int main()
{
int i,j,maxx,lgmax=0,e=1;
ifstream f("scmax.in");
ofstream g("scmax.out");
f>>n;
f>>s[1];l[1]=1;
for(i=2;i<=n;i++)
{f>>s[i];
maxx=0;
while(s[j]<s[i]&&l[j]>maxx) j--;
maxx=l[j];
l[i]=maxx+1;
if(l[i]>lgmax) {
lgmax=l[i];
d[e]=i;e++;}
}
g<<lgmax<<endl;
for(i=1;i<e;i++)
g<<s[d[i]]<<" ";
f.close();
g.close();
return 0;
}