선택은 나의 것

[BOJ 백준] 10025번 게으른 백곰 본문

☽ Algorithm/BOJ

[BOJ 백준] 10025번 게으른 백곰

Algoribi 2021. 7. 5. 13:42

문제

BOJ 10025 : https://www.acmicpc.net/problem/10025

 

10025번: 게으른 백곰

첫 줄에 정수 N과 K가 들어온다. 둘째 줄부터 N째 줄까지, 공백을 사이에 두고 각 양동이의 얼음의 양을 나타내는 gi와 양동이의 좌표를 나타내는 xi가 주어진다.

www.acmicpc.net

접근

 슬라이딩 윈도우(Sliding Window)를 이용하여 문제를 해결하였다. 해결 방법은 백준 2531번 : 회전 초밥 문제와 매우 유사하기 때문에 이 글을 참고하길 바란다.

코드

#include <iostream>

using namespace std;

int n, k, ice[1000005] = {0}, a, b, counter = 0, ans = 0, chk = 0;

int main() {
    cin >> n >> k;

    for (int i = 0; i < n; i++) {
        cin >> a >> b;
        ice[b] = a;
        if (chk < b)
            chk = b;
    }
    for (int i = 0; i <= chk; i++) {
        if (i > k * 2)
            counter -= ice[i - (k * 2 + 1)];
        counter += ice[i];
        if (ans < counter)
            ans = counter;
    }
    cout << ans;

    return 0;
}

 

깃 허브 주소 : https://github.com/algoribi/algorithm-study

Comments