Cod sursa(job #1635061)

Utilizator savigunFeleaga Dragos-George savigun Data 6 martie 2016 14:54:49
Problema Cel mai lung subsir comun Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 1.14 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream in("cmlsc.in");
ofstream out("cmlsc.out");


void cmlsc()
{
    int n, m, i, j, *a, *b, secvmax=0, l, e, ib, *s, *cs, f;
    in>>n>>m;
    a=new int[n+1];
    b=new int[m+1];
    s=new int[n+1];
    cs=new int[n+1];
    for(i=1;i<=n;i++)
        in>>a[i];
    for(i=1;i<=m;i++)
        in>>b[i];

    for(l=1;l<=n;l++)
    {
        i=l;
        j=1;
        ib=1;
        e=0;
        while(i<=n)
        {
            while(j<=m)
            {
                if(a[i]==b[j])
                {
                    ib++;
                    e++;
                    s[e]=a[i];
                    if(e>secvmax)
                    {
                        for(f=1;f<=e;f++)
                            cs[f]=s[f];
                        secvmax=e;
                    }
                    break;
                }
                j++;
            }
            i++;
            j=ib;
        }
    }
    out<<secvmax<<endl;
    for(i=1;i<=secvmax;i++)
    {
        out<<cs[i]<<" ";
    }
}

int main()
{

cmlsc();


    return 0;
}