#include #include #include #include #define rep(i,a,b) for(int i=(a);i<(b);i++) #define rrep(i,a,b) for(int i=(b)-1;i>=(a);i--) #define all(x) begin(x),end(x) #define sz(x) (int)(x).size() using namespace std; using namespace atcoder; using ll=long long; using ld=long double; using vll=vector; using vvll=vector; using vi=vector; using vvi=vector; using pll=pair; using pi=pair; // using mint=modint998244353; // using BoostPoint=boost::polygon::point_data; // using Voronoi=boost::polygon::voronoi_diagram; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); ll N; cin>>N; vll s(N+1,0); rep(i,1,N+1){ ll d; cin>>d; s[i]+=s[i-1]+d; } ll tol=s[N]; ll Q; cin>>Q; while(Q--){ ll y,m,d,k; cin>>y>>m>>d>>k; ll x=s[m-1]+d+k-1; y+=x/tol; x%=tol; ll nm=upper_bound(all(s),x)-s.begin(); ll nd=x-s[nm-1]+1; cout<