문제 풀이
백곰이 닿을 수 있는 범위를 윈도우로 만들어 전부 탐색한다.
소스 코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import sys
input = sys.stdin.readline
n, k = map(int, input().split())
arr = [list(map(int, input().split())) for _ in range(n)]
ice = [0] * 1000001
for i in range(n):
ice[arr[i][1]] = arr[i][0]
next = 2*k + 1
window = sum(ice[:next])
answer = window
for i in range(next, 1000001):
window += (ice[i] - ice[i - next])
answer = max(answer, window)
print(answer)