Cod sursa(job #2088672)

Utilizator stefzahZaharia Stefan Tudor stefzah Data 15 decembrie 2017 17:45:26
Problema Kdrum Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <fstream>
#include <vector>
#include <queue>
#include <deque>
#define INF 1000000005
using namespace std;
ifstream fin("secvmin.in");
ofstream fout("secvmin.out");
int n,m,i,j,a[100005],b[100005],mn=INF,q[1000005],o[1000005];
int v[1000005];
bool c[1000005];
deque<int>D2;
int main()
{fin>>n>>m;
 for(i=1;i<=n;i++)
    fin>>a[i];
 for(i=1;i<=m;i++)
    {fin>>b[i];c[b[i]]=1;q[b[i]]=b[i-1];}
 v[0]=1;
 for(i=1;i<=n;i++)
    {if(c[a[i]]==1&&v[q[a[i]]]>0){v[a[i]]=i;
                    if(a[i]==b[1])o[a[i]]=i;
                    else o[a[i]]=o[q[a[i]]];
                    if(a[i]==b[m])mn=min(mn,i-o[a[i]]+1);
                   }
    }
 if(mn!=1000000005)fout<<mn;
 else fout<<"-1";
}