#ifdef NACHIA #define _GLIBCXX_DEBUG #else // disable assert #define NDEBUG #endif #include #include #include #include #include using namespace std; using ll = long long; const ll INF = 1ll << 60; #define REP(i,n) for(ll i=0; i using V = vector; template void chmax(A& l, const B& r){ if(l < r) l = r; } template void chmin(A& l, const B& r){ if(r < l) l = r; } void testcase(){ ll N, M; cin >> N >> M; V S(M), T(M); V A(N*2+1); REP(i,N*2+1) cin >> A[i]; V vis(N+1); REP(i,M) cin >> S[i]; T = S; for(auto a : S) vis[a] = 1; REP(i,T.size()){ ll v = T[i]; for(auto s : S) if(vis[A[s+v]] == 0){ vis[A[s+v]] = 1; T.push_back(A[s+v]); } } cout << T.size() << "\n"; } int main(){ cin.tie(0)->sync_with_stdio(0); testcase(); return 0; }