정수 n과 q가 첫 줄에, 정수 n개가 둘째 줄에, 이후 q개의 쿼리(l r)가 입력됩니다. 각 쿼리에서 l~r 구간 합(1-indexed)을 출력하세요.
📥 테스트 입력값
5 3
1 2 3 4 5
1 3
2 4
1 5
🔎 실행 결과
6
9
15
💡 힌트 코치
prefix sum 배열로 O(1) 쿼리를 지원하세요.
✅ 정답 공개
n,q=map(int,input().split())
nums=list(map(int,input().split()))
prefix=[0]*(n+1)
for i in range(n): prefix[i+1]=prefix[i]+nums[i]
for _ in range(q):
l,r=map(int,input().split())
print(prefix[r]-prefix[l-1])