Cod sursa(job #2500564)
| Utilizator | Data | 28 noiembrie 2019 10:50:08 | |
|---|---|---|---|
| Problema | Subsir crescator maximal | Scor | 0 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.6 kb |
#include<fstream>
#include<deque>
using namespace std;
ifstream cin("scmax.in");
ofstream cout("scmax.out");
long long int n,max1[99999],x,max2,indice,imax=1;
deque <long long int> q[99999];
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>x;
for(int k=1;k<=imax;k++)
{
if(q[k].empty() || q[k].back()<x){q[k].push_back(x);max1[k]++;
if(max2<max1[k]){max2=max1[k];indice=k;}
}
else imax++;
}
}
cout<<max2<<"\n";
for(long i=0;i<q[indice].size();i++)
cout<<q[indice][i]<<" ";
}
