Pagini recente » Cod sursa (job #713796) | Cod sursa (job #1458068) | Cod sursa (job #920164) | Arhiva de probleme | Cod sursa (job #696945)
Cod sursa(job #696945)
#include <fstream>
#define MV 10004
using namespace std;
const char iname[] = "scmax.in";
const char oname[] = "scmax.out";
ifstream f(iname); ofstream g(oname);
int i, n, j, lmax_c, lmax=1, ind, ind_max;
int v[MV];
int best[MV];
int sol[MV][MV];
int main(){
f>>n; for( i = 1; i <= n; ++i ) f>>v[i];
for( i = 1; i <= n; ++i ){
lmax_c = 1; ind = 1;
sol[i][ind] = v[i]; ++ind;
for( j = i+1; j <= n; ++j )
if( v[j] > v[i] && v[j] != v[j-1] ){
sol[i][ind]=v[j];
++ind;
++lmax_c;
v[i]=v[j];
}
if(lmax_c > lmax){ lmax = lmax_c; ind_max = i; }
sol[i][0] = lmax_c;
}
g<<lmax<<'\n';
for( i = 1; i <= sol[ind_max][0]; ++i )
g<<sol[ind_max][i]<<' ';
g<<'\n';
return 0;
}