[BOJ] 구간합 구하기 4

Minsu Han·2022년 10월 26일
0

알고리즘연습

목록 보기
45/105

코드

import sys
input = sys.stdin.readline

n, m = map(int, input().split())
nl = list(map(int, input().split()))

for i in range(1, len(nl)):
    nl[i] += nl[i-1]

for _ in range(m):
    st, end = map(int, input().split())
    if st == 1:
        print(nl[end-1])
    else:
        print(nl[end-1] - nl[st-2])

결과

image


풀이 방법

  • 누적합을 이용하여 구간합을 구하는 간단한 문제
  • 구간 (a, b)의 구간합 = (b까지의 누적합) - (a 바로 전까지의 누적합)

profile
기록하기

0개의 댓글