#include using namespace std; #include using namespace atcoder; int main() { cin.tie(0)->sync_with_stdio(0); int N; cin >> N; segtree::min(); }> axl1(N), axl2(N), axl3(N); segtree::max(); }> axr1(N), axr2(N), axr3(N); for (int i = 0; i != N; ++i) { long long A, B, D; cin >> A >> B >> D; axl1.set(i, B); axr1.set(i, B + D); axl2.set(i, (A - D) + (B - D)); axr2.set(i, A + B); axl3.set(i, A - B); axr3.set(i, (A + D) - (B - D)); } int Q; cin >> Q; for (int i = 0; i != Q; ++i) { int S, L, R; cin >> S >> L >> R; --S, --L; cout << (axl1.get(S) < axr1.prod(L, R) && axl1.prod(L, R) < axr1.get(S) && axl2.get(S) < axr2.prod(L, R) && axl2.prod(L, R) < axr2.get(S) && axl3.get(S) < axr3.prod(L, R) && axl3.prod(L, R) < axr3.get(S) ? "Yes\n" : "No\n"); } }