Cod sursa(job #154903)

Utilizator catalin_olariOlari Catalin Georgel catalin_olari Data 11 martie 2008 16:08:39
Problema Cel mai lung subsir comun Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.91 kb
#include<fstream.h>   
  
int main()   
{int n,i,m,j,v[40],t[40],nr=0,max=0,ok=0,I=0,II=0;
 ifstream f("cmlsc.in");   
 f>>n>>m;   
 for(i=0;i<n;i++)
    f>>v[i];   
 for(i=0;i<m;i++)   
    f>>t[i];   
 f.close();   
  
    while(I<n)   
    {nr=0;   
        for(i=I;i<n;i++)   
         {  for(j=ok;j<m;j++)   
                if(v[i]==t[j])   
                   {nr++;   
                    ok=j+1;   
                    j=m;   
                    }   
  
          if(I==0&&ok==0)   
            i=n;   
          }   
    if(nr>max)   
    {   max=nr;   
        II=I;   
    }   
    ok=0;   
    I++;   
   }   
  
 ok=0;   
 ofstream g("cmlsc.out");
 g<<max<<'\n';
 for(i=II;i<n;i++)   
    for(j=ok;j<m;j++)   
        if(v[i]==t[j])   
           {    g<<v[i]<<" ";   
                ok=j+1;   
                j=m;   
           }   
 g.close();   
  
 return 0;   
}