Submission #971929

#TimeUsernameProblemLanguageResultExecution timeMemory
971929simona1230Strange Device (APIO19_strange_device)C++17
0 / 100
79 ms21356 KiB
#include <bits/stdc++.h>

using namespace std;
long long n,a,b;
map<pair<long long,long long>,long long> mp;
void help()
{

    for(long long t=0;t<=110;t++)
    {
        long long x=(t+t/b)%a,y=t%b;
        if(mp[{x,y}])
            {
                cout<<t<<" "<<x<<" "<<y<<" "<<mp[{x,y}]<<endl;
            }
        mp[{x,y}]=t+1;
    }
}

pair<long long,long long> p[300001];
void solve()
{
    for(long long i=1;i<=n;i++)
    {
        long long l,r;
        cin>>l>>r;
        p[i]={l%(a*b),r%(a*b)};
    }
    long long ans=0;
    sort(p+1,p+n+1);

    long long r=-1;
    for(long long i=1;i<=n;i++)
    {
        if(p[i].second>r)
        {
            if(p[i].first>r)
                ans+=p[i].second-p[i].first+1;
            else ans+=p[i].second-r;
        }

        r=max(r,p[i].second);
    }

    cout<<ans<<endl;
}
int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	cout.tie(NULL);
	cin>>n>>a>>b;

	//help();
	solve();
	return 0;
}
#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...