Pagini recente » Cod sursa (job #2928764) | Cod sursa (job #3190232) | Cod sursa (job #2216705) | Cod sursa (job #1520381) | Cod sursa (job #867875)
Cod sursa(job #867875)
#include <iostream>
#include <fstream>
using namespace std;
int a[100001], l[100001],poz, k,i,mx,maxa,n;
int main()
{
ifstream f("scmax.in");
ofstream g("scmax.out");
f>>n;
for(i=1;i<=n;i++)
{
f>>a[i];
}
l[n]=1;
for(i=n-1;i>=1;i--)
{bool ok=true;
for(k=i+1;k<=n&&ok;k++)
{
if(a[i]<a[k]&&l[i]<l[k]+1)
{
l[i]=l[k]+1;
if(l[k]+1>maxa)
{
maxa=l[k]+1;
poz=i;
}
ok=false;
}
}
if(l[i]==0)
{
l[i]=1;
}
}
g<<maxa<<"\n";
g<<a[poz]<<" ";
for(i=1;i<=n;i++)
{
if(l[i]==maxa-1)
{
g<<a[i]<<" ";
maxa--;
}
}
return 0;
}