Cod sursa(job #798437)

Utilizator ilovcepepei lov cepepe ilovcepepe Data 16 octombrie 2012 17:16:02
Problema Subsir 2 Scor 45
Compilator cpp Status done
Runda Arhiva de probleme Marime 2.03 kb
#include<fstream>
using namespace std;
int n,b,a[100005],urm[100005],l[100005],i,j,p;
    ifstream  cin ("subsir2.in");
    ofstream  cout("subsir2.out");
int main()
{ 
    
   
   cin>>n;p=n; urm[n]=-1;
    l[n]=1;
   for(i=1;i<=n;i++)
   cin>>a[i]; int max=1;
             for(i=n;i>=1;i--)                
              { urm[i]=-1;
               l[i]=1;
                          for(j=n;j>i;j--)
                    if(a[i]<a[j]&&l[i]<l[j]+1)
                               {
                                      l[i]=l[j]+1;
                                      urm[i]=j;
                                              if(l[i]>max) 
                                         max=l[i], p=i;                        
                               }  }
                                   int aux=0;
                              
                                               cout<<max<<endl; 
                                               for(int k=p;k>1;k--)
                                               for(int k2=k-1;k2>1;k2--)
                                               {
                                                       /*if(a[k]>a[k2])
                                               {
                                                        aux=a[k];
                                                        a[k]=a[k2];
                                                        a[k2]=aux;      
                                                              
                                                              }
                                                       */
                                                       }
                               i=p;
                               while(i!=-1)
                               {cout<<i<<" ";i=urm[i];
                                          
                                          
                                                }    
                                                
    
    
    return 0;
    
    
    }