728x90
dp 문제를 푸는 것 처럼 합을 배열에 미리 저장해 두고
주어진 범위에 따라 배열에서 찾아 마이너스 해주면 풀리는 문제
리스트 활용(누적합 미리 저장) - 성공
import sys
input = sys.stdin.readline
n,m = map(int,input().split())
arr = list(map(int,input().split()))
sum = [0]
total = 0
for i in arr:
total += i
sum.append(total)
for _ in range(m):
a,b = map(int,input().split())
print(sum[b] - sum[a-1])
리스트 활용 - 시간 초과
import sys
input = sys.stdin.readline
n,m = map(int,input().split())
arr = list(map(int,input().split()))
arr.insert(0,0)
for _ in range(m):
a,b = map(int,input().split())
result = 0
for i in range(a,b+1):
result += arr[i]
print(result)
728x90
'백준 풀이' 카테고리의 다른 글
[백준/BOJ] - 1927번 python 풀이 - minheap (0) | 2023.05.11 |
---|---|
[백준/BOJ] - 1065번 python 풀이 - 숫자의 각 자릿수를 list에 int형으로 변환 하는법 (0) | 2023.05.10 |
[백준/BOJ] - 1620번 python 풀이 - dict (0) | 2023.04.14 |
[백준/BOJ] - 9375번 python 풀이 - dict (0) | 2023.04.12 |
[백준/BOJ] - 9205번 python 풀이 - bfs (0) | 2023.04.05 |