n = int(input()) A = list(map(int,input().split())) q = int(input()) P = [] LR = [] for i in range(q): p,l,r = map(int,input().split()) P.append(p) LR.append([l-1,r]) M = 2*10**3+5 count = [0]*M primes = [] for i in range(2,M): if count[i]: continue primes.append(i) for j in range(i,M,i): count[j] += 1 accum = [[0]*(len(primes)) for i in range(n+1)] zero = [0]*(n+1) for i,a in enumerate(A,1): zero[i] = zero[i-1]+int(a==0) for j,p in enumerate(primes): accum[i][j] = accum[i-1][j] while a%p == 0: a //= p accum[i][j] += 1 for p,(l,r) in zip(P,LR): if zero[r]-zero[l]: print("Yes") continue for j,d in enumerate(primes): num = accum[r][j]-accum[l][j] while num and p%d == 0: p //= d num -= 1 print("Yes" if p == 1 else "NO")