Pagini recente » Cod sursa (job #3121013) | Cod sursa (job #1470677) | Cod sursa (job #2486298) | Cod sursa (job #2596114) | Cod sursa (job #2306844)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("scmax.in");
ofstream g("scmax.out");
int aux[100],v2[100];
int cmmv(int i, int v[],int n)
{
int minn=2000001;
int p=0;
for(int j=i+1;j<=n;j++)
if(v[j]>v[i] && v[j]<minn )
{
minn=v[j];
p=j;
}
return p;
}
int main()
{int n,v[100];
f>>n;
for(int i=1;i<=n;i++)
f>>v[i];
int maxx=0,pmax=0;
for(int i=n;i>=1;i--)
{
int p=cmmv(i,v,n);
if(p==0)
{
aux[i]=1;
v2[i]=0;
}
else
{
aux[i]=aux[p]+1;
v2[i]=p;
}
if(aux[i]>maxx)
{
maxx=aux[i];
pmax=i;
}
}
g<<maxx<<endl;
while(v2[pmax]!=0)
{
g<<v[pmax]<<" ";
pmax=v2[pmax];
}
g<<v[pmax];
return 0;
}