728x90
반응형
문제
https://www.acmicpc.net/problem/11659
해설
반응형
누적합을 저장할 리스트를 만들고 0 ~ i까지의 누적합을 계산해 저장한다.
a~b까지의 구간 합은 b까지의 누적합과 a까지의 누적합을 뺀 것이기 때문에
누적합만 계산해서 넣어두면 쉽게 풀 수 있다.
리스트에 0을 미리 넣어두면 인덱스를 헷갈리지 않고 풀 수 있다.
코드
-파이썬
#백준 11659(구간 합 구하기 4)
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
num = [*map(int, input().split())]
prefix_sum = [0]
temp = 0
for i in num:
temp += i
prefix_sum.append(temp)
for j in range(m):
a, b = map(int, input().split())
print(prefix_sum[b] - prefix_sum[a-1])
728x90
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[파이썬] BOJ_2839(설탕 배달) (0) | 2023.06.28 |
---|---|
[파이썬] BOJ_11725(트리의 부모 찾기) dfs/bfs (0) | 2023.06.27 |
[파이썬] BOJ_9012(괄호) (0) | 2023.06.26 |
[파이썬] BOJ_10448(유레카 이론) (0) | 2023.06.24 |
[파이썬] BOJ_4963(섬의 개수) (0) | 2023.06.15 |