제출 #467431

#제출 시각아이디문제언어결과실행 시간메모리
467431SirCovidThe19th이상한 기계 (APIO19_strange_device)C++17
100 / 100
2033 ms100176 KiB
#include <bits/stdc++.h>
using namespace std; 

#define ll long long
#define inf 2e18

int main(){
    int n; ll a, b, p; cin >> n >> a >> b; map<ll, int> d;
    p = a / __gcd(a, b + 1); p = (p >= inf / b) ? inf : p * b;
    for (int i = 0; i < n; i++){
        ll l, r; cin >> l >> r;
        if (r - l + 1 >= p){ d[0]++, d[p]--; continue; }
        l %= p; r %= p;
        if (l <= r) d[l]++, d[r + 1]--;
        else d[0]++, d[r + 1]--, d[l]++, d[p]--;
    }
    int cnt = 0; ll pre, ans = 0;
    for (auto &val : d){
        if (cnt) ans += val.first - pre;
        cnt += val.second; pre = val.first;
    }
    cout<<ans<<endl;
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...