Cod sursa(job #2054181)

Utilizator alexmihai21Mihai Alexandru alexmihai21 Data 1 noiembrie 2017 19:24:48
Problema Cel mai lung subsir comun Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.1 kb
#include <stdio.h>
#include <iostream>
#include <fstream>


using namespace std;

int main(){
     int ok,m,n, a[1024],b[1024],k,x,maxim,c,l[1024],d[1024];
   ifstream in("cmlsc.in");
    ofstream out("cmlsc.out");
    in>>n;
    in>>m;
    for(int i=0;i<n;i++)
         in>>a[i];
    for(int j=0;j<m;j++)
         in>>b[j];

        k=0;
        c=m;
          ok=1;
          while(ok==1){
                ok=0;
                k=0;
        for(int i=m;i>0;i++){

               for(int j=c;j>0;j++)
                    if (b[i]==a[j]) {k++;
                                     c=j;
                                     ok=1;
                                     d[k]=b[i];
                                    break;
                                     }
            if(k>maxim) {maxim=k;
                          for(int i=0;i<maxim;i++)
                               l[i]=d[i];
                           }

          }
          }
        out<<maxim<<"\n";
        for(int i=0;i<maxim;i++)
            out<<l[i]<<" ";
    in.close();
    out.close();
return 0;


}