#include <bits/stdc++.h>
using namespace std;
int n,l,v,ans,q;
double a[200005],t;
bool pd(double a,double b){
return a>b;
}
int main() {
cin>>n>>l>>v;
for(int i=1;i<=n;i++)
cin>>a[i],a[i]/=v;
sort(a+1,a+n+1,pd);
cin>>q;
while(q--){
cin>>t;
ans=0;
t-=(double)l/v;
while(t>0&&ans<=n)
t-=a[++ans];
if(ans>n)
cout<<"-1\n";
else
cout<<ans<<endl;
}
return 0;
}
if(ans>n)改if(ans>=n)能过样例,但wa的一塌糊涂,不改85分(剩三个TLE),过不了样例