Pagini recente » Rating Alexandru Marian Alexandru (granny) | Cod sursa (job #1858289) | Cod sursa (job #715068) | Cod sursa (job #446314) | Cod sursa (job #2028867)
//#include <iostream>
#include <fstream>
using namespace std;
ifstream cin ("scmax.in");
ofstream cout("scmax.out");
int a[100005], b[100005], p[100005] , n, rs, prs;
void printrs(int i){
if(p[i] != 0) printrs(p[i]);
cout << a[i] << " ";
}
int main() {
cin >> n;
for(int i = 1; i <= n; i++)
{
cin >> a[i];
for(int j = 1; j < i; j++) if((a[j] < a[i]) && (b[i] < (b[j] + 1))) b[i] = b[j] + 1, p[i] = j;
if(b[i] > rs) rs = b[i], prs = i;
}
cout << rs + 1 << '\n';
printrs(prs);
return 0;
}