// 23 - 12 - 23 
#include<bits/stdc++.h>
using namespace std;
#define read() ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0)
#define day() time_t now = time(0);char* x = ctime(&now);cerr<<"Right Now Is : "<<x<<"\n"
#define int long long
#define ii pair<int,int>
#define X first
#define Y second 
const long long MAX = (int)5e5 + 5;
const long long INF = (int)1e9;
const long long MOD = (int)1e9 + 7;
int n,L,cnt[MAX];
int l[MAX],r[MAX];
int costl[MAX],costr[MAX];
int farl,farr;
bool cost(int idx,int idy,int t){
	if(idx <= idy){
		int val = costl[idy] + (costl[idx] + 1) * (idy - idx);
		if(idx > farl)val += 2 * (idx - farl);
		if(farr > idy)val += costr[idy] + 2 * (farr - idy) * (1 + costl[idy]);
		//cout << val << " " << t << " \n";
		return val + n <= t;
	}else{
		int val = costr[idx] + (costr[idy] + 1) * (idx - idy);
		if(idx < farr)val += 2 * (farr - idx);
		if(farl < idy)val += costl[idy] + 2 * (idy - farl) * (1 + costr[idy]);
		//cout << val << " " << t << " \n";
		return val + n <= t;
	}
}
signed main(){
	
	read();
	cin >> n >> L;
	L++;
	farl = L;
	farr = 1;
	for(int i = 1,x;i <= n;i++){
		cin >> x;
		x++;
		cnt[x]++;
		farl = min(farl,x);
		farr = max(farr,x);
	}
	for(int i = 1;i <= L;i++){
		l[i] = l[i - 1] + cnt[i];	
		costl[i] = costl[i - 1] + l[i - 1];	
	}
	for(int i = L;i >= 1;i--){
		r[i] = r[i + 1] + cnt[i];
		costr[i] = costr[i + 1] + r[i + 1];
	}
	
	int q;cin >> q;
	for(int i = 1,s,g,t;i <= q;i++){
		cin >> s >> g >> t;
		s++;g++;
		cout << ((cost(s,g,t)) ? "Yes" : "No") << "\n";
	}
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |