Pagini recente » Cod sursa (job #460986) | Cod sursa (job #705476) | Cod sursa (job #357199) | Cod sursa (job #2713171) | Cod sursa (job #1917011)
#include <fstream>
using namespace std;
ifstream fin("scmax.in");
ofstream fout("scmax.out");
int n,i,j,maxi,ct,poz;
long long x, v[100001],lung[100001],xp;
int main()
{
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i];
lung[n]=1;
for(i=n-1;i>=1;i--)
{
for(j=i+1;j<=n;j++)
if(v[i]<v[j])
if(lung[j]>lung[i])
lung[i]=lung[j];
lung[i]++;
}
for(i=1;i<=n;i++)
if(lung[i]>maxi) {maxi=lung[i]; poz=i;}
fout<<maxi<<"\n";
fout<<v[poz]<<" ";
for(i=poz+1;i<=n;i++)
if(lung[i]==maxi-1 && v[poz]<v[i])
{
fout<<v[i]<<" ";
maxi--;
poz=i;
}
return 0;
}