Pagini recente » Cod sursa (job #3284206) | Cod sursa (job #2321711) | Cod sursa (job #3001919) | Cod sursa (job #2219523) | Cod sursa (job #694973)
Cod sursa(job #694973)
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
long long n,v[100005],i,j,maxi,best[100005],bun[100005],pi,k;
int main()
{
f>>n;
f>>v[1];
for(i=2;i<=n;i++)
{
f>>v[i];
for(j=1;j<i;j++)
if(v[i]>v[j]&&best[i]<best[j]+1)
best[i]=best[j]+1;
if(best[i]>maxi)
maxi=best[i],pi=i;
}
maxi+=1;
g<<maxi<<'\n';
k=1;
bun[k]=v[pi];
pi--;
maxi--;
for(i=pi;i>=1;i--)
{
if(best[i]<maxi)
bun[k+1]=v[i],k++,maxi--;
}
for(i=k;i>=1;i--)
g<<bun[i]<<' ';
f.close();
g.close();
return 0;
}