Pagini recente » Cod sursa (job #622038) | Cod sursa (job #949759) | Cod sursa (job #1380109) | Cod sursa (job #2361678) | Cod sursa (job #2028884)
//#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, j;
/*void printrs(int m, int n){
while(p[n] != m)n--;
if(m > 1) printrs(m - 1, n - 1);
cout << a[n] << " ";
}*/
int main() {
cin >> n;
for(int i = 1; i <= n; i++)
{
cin >> a[i];
j = 1;
while(a[i] > b[j] && j <= rs) j++;
b[j] = a[i]; p[i] = j;
rs = max(rs,j);
}
cout << rs << '\n';
//printrs(rs,n);
//cout << '\n';
for(int i = 1; b[i]; i++) cout << b[i] << ' ';
return 0;
}