Submission #726833

#TimeUsernameProblemLanguageResultExecution timeMemory
726833penguin133Strange Device (APIO19_strange_device)C++17
100 / 100
557 ms53260 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define pi pair<int, int> #define pii pair<int, pi> #define fi first #define se second #ifdef _WIN32 #define getchar_unlocked _getchar_nolock #endif mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); void solve(){ int n, a, b; cin >> n >> a >> b; int tmp = __gcd(a, b+1); __int128 x = a; x *= b; x /= tmp; vector <pi> v; int ans = 0; for(int i=1;i<=n;i++){ int l, r; cin >> l >> r; if(l == r){ v.push_back({l%x, l%x}); continue; } __int128 l1 = l, r1 = r; if(r1 >= l1 + x){ cout << (long long)x << '\n'; return; } l %= x; r %= x; if(l > r)v.push_back({l, x-1}), v.push_back({0, r}); else v.push_back({l, r}); } sort(v.begin(), v.end()); int prv = -1, st = -1; for(auto [i, j] : v){ if(i > prv){ if(prv != -1)ans += prv-st+1; st = i; } prv = max(prv, j); } if(prv != -1)ans += prv-st+1; cout << ans; } main(){ ios::sync_with_stdio(0);cin.tie(0); int tc = 1; //cin >> tc; for(int tc1=1;tc1<=tc;tc1++){ // cout << "Case #" << tc1 << ": "; solve(); } }

Compilation message (stderr)

strange_device.cpp:52:1: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
   52 | main(){
      | ^~~~
#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...