Pagini recente » Cod sursa (job #3037801) | Cod sursa (job #941053) | Cod sursa (job #1525049) | Cod sursa (job #2551845) | Cod sursa (job #678746)
Cod sursa(job #678746)
#include<stdio.h>
FILE *f = fopen("scmax.in","r");
FILE *g = fopen("scmax.out","w");
using namespace std;
int T[100002],v[100002],k;
void fct(int a){
if(a!=0){
fct(T[a]);
fprintf(g,"%d ",v[a]);
}
}
int i,j,q,L[100002],n,max,pmax;
int main(){
fscanf(f,"%d\n",&n);
for(i=1;i<=n;i++)
{
fscanf(f,"%d\n",&v[i]);
max=0;
for(j=i-1;j>=1;j--)
{
if(v[i]>v[j] && L[j]>max) {
max=L[j];
T[i] = j;
}
}
L[i]=max+1;
if(L[i]>q) {
q=L[i];
pmax = i;
}
}
fprintf(g,"%d\n",q);
fct(pmax);
return 0;
}