Cod sursa(job #2071349)

Utilizator armand200Armand Cismaru armand200 Data 20 noiembrie 2017 16:57:54
Problema Cel mai lung subsir comun Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.01 kb
#include <fstream>
using namespace std;

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

int a[1026],b[1026],v[1026][1026],n,m;

void load ()
{
    int i,j;
    f>>n>>m;
    for(i=1; i<=n; i++)
        f>>a[i];

    for(j=1; j<=m; j++)
        f>>b[j];
}

int k=1;

void common ()
{
    int i,j;

    for(i=1; i<=n; i++)
        for(j=1; j<=m; j++)
            v[i][j]=0;
    int u=0;

    for(i=1; i<=n; i++)
        for(j=1; j<=m; j++)
            if(a[i]==b[j])
                if( u==0 || u<j )
                {
                    v[i][j]=k;
                    k++;
                    u=j;
                }
}

void print ()
{
    int i,j;
    for(i=1; i<=n; i++)
        for(j=1; j<=m; j++)
            if(v[i][j]!=0)
                g<<a[i]<<" ";
}
int main()
{
    load ();
    common();
    print();

     /*int i,j;
        for(i=1;i<=n;i++){
            for(j=1;j<=m;j++)
            g<<v[i][j]<<" ";
        g<<endl;
        } */

    return 0;
}