题目描述
相当于是两个一维前缀和
样例
#相当于是两个一维前缀和
def solve(tmp, l, r):
return tmp[r] - tmp[l - 1]
def main():
n = int(input())
a = [0] * (n + 2)
b = [0] * (n + 2)
a[1: n + 1] = list(input().split())
a = [int(i) for i in a]
b[1: n + 1] = sorted(a[1: n + 1])
for i in range(1, n + 1):
a[i] += a[i - 1]
for i in range(1, n + 1):
b[i] += b[i - 1]
m = int(input())
for i in range(m):
c, l, r = map(int, input().split())
if c == 1:
ans = solve(a, l, r)
else:
ans = solve(b, l, r)
print(ans)
main()