# include<bits/stdc++.h>
using namespace std;
int n,en,mn;
vector<int>v;
int find(int x ,int c ,int y , int t){
	return t+(c+1)*abs(x-y);
}
void pp(int x,int l , int r ,int c , int t){
	if(t>=mn){
		return ;
	}
	if(c==n){
		mn=min(mn,find(x,c,en,t));
		return;
	}
	if(r<l) return ;
	pp(v[l],l+1,r,c+1,find(x,c,v[l],t)+1);
	pp(v[r],l,r-1,c+1,find(x,c,v[l],t)+1);
}
int main(){
	cin>>n;
	v=vector<int>(n);
	for(auto &x:v) cin>>x;
	sort(v.begin(),v.end());
	int q;
	cin>>q;
	while(q--){
		int s,t;
		cin>>s>>en>>t;
		mn=1e9;
		pp(s,0,n-1,0,0);
		if(mn<=t){
			cout<<"YES"<<endl;
		}
		else cout<<"NO"<<endl;
	}
}
| # | 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... |