Submission #1174777

#TimeUsernameProblemLanguageResultExecution timeMemory
1174777MuhammetStrange Device (APIO19_strange_device)C++17
65 / 100
301 ms16956 KiB
#include "bits/stdc++.h" using namespace std; #define ll long long #define SZ(s) (int)s.size() #define ff first #define ss second ll INF = LLONG_MAX; int main() { ios_base::sync_with_stdio(false); cin.tie(nullptr); ll n, a, b; cin >> n >> a >> b; ll ans = 0, s = 0; vector <pair <ll, ll>> v; ll x = (a / __gcd(a, b+1LL)); ll k = (x * min(b, INF/x)); for(int i = 1; i <= n; i++) { ll l, r; cin >> l >> r; s += (r - l + 1); if(k != 0) l %= k, r %= k; if(l <= r) { v.push_back({l, r}); } else { v.push_back({l, k-1}); v.push_back({0, r}); } } if(!k) { cout << s; return 0; } sort(v.begin(), v.end()); ll L = 0; for(auto [l, r] : v) { l = max(l, L); r = max(L-1, r); if(l <= r) ans += (r - l + 1); L = r+1; } cout << ans; 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...