제출 #1010166

#제출 시각아이디문제언어결과실행 시간메모리
1010166RandomUser이상한 기계 (APIO19_strange_device)C++17
0 / 100
975 ms63036 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; const int mod = 1e9 + 7; int main() { ll n, A, B; cin >> n >> A >> B; ll P = A / __gcd(A, B + 1) * B; set<pair<ll, ll> > st; for(int i=0; i<n; i++) { ll L, R; cin >> L >> R; if(P <= 0) { st.insert({ L, R }); continue; } ll a = L % P, b = R % P; if(L == R) { st.insert({ a, b }); } else if(a < b) { st.insert({ a, b }); } else { st.insert({ a, P - 1 }); st.insert({ 0, b }); } } ll res = 0, right_point = -1; for(auto &it : st) { // cout << it.first << " " << it.second << '\n'; if(it.second <= right_point) continue; if(it.first > right_point) { res += it.second - it.first + 1; right_point = it.second; } else { res += it.second - right_point; } } cout << res << '\n'; 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...