#include<bits/stdc++.h>

using namespace std;

#include<atcoder/all>
using namespace atcoder;
using mint=atcoder::modint998244353;

#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")

#define int long long

signed main(){
	int N,T;cin>>N>>T;
	vector<int> t(N-1);for(auto&&e:t)cin>>e;
	int K;cin>>K;
	vector<int> X(K);for(auto&&e:X)cin>>e,e--;

	auto slv=[&](int k)->bool {
		vector<bool> st(N);
		for(int i=0;i<k;i++)st[X[i]]=1;
		int now=T;
		for(int i=0;i<N;i++){
			if(st[i])now+=10;
			if(i!=N-1){
				now-=t[i];
			}
			if(now<=0)return 0;
		}
		return 1;
	};

	int l=-1,r=K+1;
	while(r-l>1){
		int m=(l+r)>>1;
		if(slv(m))r=m;
		else l=m;
	}

	if(r==K+1)cout<<-1<<endl;
	else cout<<r<<endl;
}