Pagini recente » Cod sursa (job #2558061) | Cod sursa (job #131150) | Cod sursa (job #2251779) | Cod sursa (job #2346455)
#include <bits/stdc++.h>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int i,j,n,maxi[100000],v[100000],nr,val,poznr;
stack <int> st;
int main()
{ f>>n;
for(i=1;i<=n;i++)
f>>v[i];
for(i=1;i<n;i++)
for(j=i+1;j<=n;j++)
if(v[j]>v[i] && maxi[i]+1>maxi[j])
maxi[j]=maxi[i]+1;
for(i=1;i<=n;i++)
if(maxi[i]>nr)
{ nr=maxi[i];
poznr=i;
}
g<<nr+1<<'\n';
for(i=poznr;i>=1;i--)
if(maxi[i]==nr)
{ st.push(v[i]);
nr--;
}
while(!st.empty())
{ g<<st.top()<<" ";
st.pop();
}
return 0;
}