Submission #139789

#TimeUsernameProblemLanguageResultExecution timeMemory
139789FedericoSStrange Device (APIO19_strange_device)C++14
5 / 100
3335 ms80632 KiB
#include <iostream> #include <map> using namespace std; typedef long long int ll; typedef pair<ll,ll> pll; ll N,A,B; ll L[1000006],R[1000006]; ll x,y; map<ll,ll> S; ll ans,K; int main(){ cin>>N>>A>>B; ll M=(A*B); for(int i=0;i<N;i++){ cin>>L[i]>>R[i]; x=L[i]%M; y=R[i]%M; if(y<x){ if(R[i]-L[i]>=M){ S[0]++; S[M]--; } else{ S[0]++; S[y+1]--; S[x]++; S[M]--; } } else{ S[x]++; S[y+1]--; } } pll q=*S.begin(); for(pll p:S){ if(K) ans+=p.first-q.first; K+=p.second; q=p; } cout<<ans; }
#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...