페이지

1911번: 흙길 보수하기

https://www.acmicpc.net/problem/1911


#include<stdio.h>
#include<algorithm>
using namespace std;
int res, n, l;
pair<intint> p[10000];
int main() {
    scanf("%d %d", &n, &l);
    for (int i = 0; i < n; i++)
        scanf("%d %d", &p[i].first, &p[i].second);
    sort(p, p + n);
    int s = 0;
    for (int i = 0; i < n; i++) {
        s = max(p[i].first, s);
        res += (p[i].second - s + l - 1) / l;
        s += ((p[i].second - s + l - 1) / l)*l;
    }
    printf("%d", res);
    return 0;
}

댓글 없음 :

댓글 쓰기