Pagini recente » Cod sursa (job #1608843) | Cod sursa (job #1640749) | Cod sursa (job #1972655) | Cod sursa (job #2915745) | Cod sursa (job #2065372)
#include <fstream>
using namespace std;
ifstream f ("subsir2.in");
ofstream g ("subsir2.out");
int v[101],dp[101],p[101],rez[11];
int main()
{
int i,j,n,lmax,poz,dim,macs;
f>>n;
for(i=1;i<=n;i++)
f>>v[i];
dp[1]=1;
for(i=2;i<=n;i++)
{
lmax=0;
poz=0;
for(j=1;j<=i-1;j++)
if(v[j]<v[i] && lmax<dp[j]){poz=j;lmax=dp[j];}
dp[i]=lmax+1;
p[i]=poz;
}
macs=-1;
poz=0;
for(i=1;i<=n;i++)
if(dp[i]>macs){macs=dp[i];poz=i;}
dim=0;
g<<macs<<'\n';
for(i=poz;i!=0;i=p[i])
{
dim++;
rez[dim]=v[i];
}
for(i=dim;i!=0;i--)
g<<rez[i]<<' ';
return 0;
}