Submission #1309394

#TimeUsernameProblemLanguageResultExecution timeMemory
1309394Warinchai이상한 기계 (APIO19_strange_device)C++20
35 / 100
321 ms16960 KiB
#include<bits/stdc++.h>
#define int long long
using namespace std;
vector<pair<int,int>>v;
int32_t main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n,a,b;cin>>n>>a>>b;
    int m=(a/__gcd(a,b+1))*b;
    int can=0;
    //cerr<<"m:"<<m<<"\n";
    for(int i=0;i<n;i++){
        int l,r;cin>>l>>r;
        if(r-l+1>=m)can=1;
        l=l%m;
        r=r%m;
        if(l<=r)v.push_back({l,r});
        else v.push_back({0,r}),v.push_back({l,m-1});
    }
    sort(v.begin(),v.end());
    if(can)cout<<m;
    else{
        int en=-1;
        int ans=0;
        for(auto [l,r]:v){
            //cerr<<"l,r:"<<l<<" "<<r<<"\n";
            int st=max(en+1,l);
            ans+=max(0LL,r-st+1);
            en=max(r,en);
        }
        cout<<ans<<"\n";
    }
}
#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...