제출 #834069

#제출 시각아이디문제언어결과실행 시간메모리
834069Antekb이상한 기계 (APIO19_strange_device)C++17
10 / 100
1687 ms524288 KiB
#include<bits/stdc++.h>
#define st first
#define nd second
#define all(x) (x).begin(), (x).end()
#define pb push_back
#define eb emplace_back
#define pp pop_back
#define mp make_pair
using namespace std;
using pii = pair<int, int>;
using ll = long long;
using vi = vector<int>;
using vii = vector<pii>;
void debug(){cerr<<"\n";}
template<typename H, typename... T>
void debug(H h, T... t){
	cerr<<h;
	if(sizeof...(t)){
		cerr<<", ";
	}
	debug(t...);
}
#define deb(x...) cerr<<#x<<" = ";debug(x);

mt19937 rng(chrono::high_resolution_clock::now().time_since_epoch().count());

int main(){
	int n;
	ll a, b;
	cin>>n>>a>>b;
	if(b>=ll(1e18)/(a/gcd(a, b+1))){
		ll s=0;
		for(int i=0; i<n; i++){
			ll l, r;
			cin>>l>>r;
			s+=r-l+1;
		}
		cout<<s;
		return 0;
	}
	ll t=b*(a/__gcd(a, b+1));
	vector<ll> V;
	for(int i=0; i<n; i++){
		ll l, r;
		cin>>l>>r;
		for(ll j=l; j<=r; j++){
			V.pb(j%t);
		}
	}
	sort(all(V));
	V.resize(unique(all(V))-V.begin());
	cout<<V.size();
}
#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...