Pagini recente » Cod sursa (job #914760) | Cod sursa (job #2660029) | Cod sursa (job #92499) | Cod sursa (job #2842278) | Cod sursa (job #1753768)
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int n,i,j,a[100020],b[100020],v[100020],Max,M,p;
int main()
{
f>>n;
for(i=1;i<=n;++i)
{
f>>v[i];
}
a[n]=1;
M=1;
for(i=n-1;i>=1;i--)
{
Max=0;
for(j=i+1;j<=n;++j)
if(v[i]<v[j]&&a[j]>Max)
{
Max=a[j];
b[i]=j;
}
a[i]=Max+1;
if(a[i]>M)
{
M=a[i];
p=i;
}
}
g<<M<<endl;
g<<v[p]<<" ";
M--;
for(i=p+1;i<=n;++i)
if(v[i]>v[p]&&a[i]==M)
{
g<<v[i]<<" ";
p=i;
M--;
}
return 0;
}