import sys MOD = 998244353 def main(): input = sys.stdin.read().split() ptr = 0 N = int(input[ptr]) ptr += 1 P = list(map(int, input[ptr:ptr+N])) ptr += N # Precompute modulo P = [x % MOD for x in P] Q = int(input[ptr]) ptr += 1 for _ in range(Q): A = int(input[ptr]) B = int(input[ptr+1]) K = int(input[ptr+2]) ptr +=3 sub = P[A-1:B] max_k = K dp = [0] * (max_k + 1) dp[0] = 1 for num in sub: # Update dp in reverse order for k in range(min(max_k, len(dp)-1), 0, -1): dp[k] = (dp[k] + dp[k-1] * num) % MOD print(dp[K] % MOD) if __name__ == "__main__": main()