This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
#include <set>
#include <cmath>
using namespace std;
typedef long long ll;
typedef pair<ll, ll> pll;
ll calculate_x(ll t, ll A, ll B) {
return (t + t / B) % A;
}
void process_interval(ll l, ll r, ll A, ll B, set<pll>& distinct_pairs) {
for (ll t = l; t <= r; ++t) {
ll y = t % B;
ll x = calculate_x(t, A, B);
distinct_pairs.insert({x, y});
}
}
int main() {
int n;
ll A, B;
cin >> n >> A >> B;
set<pll> distinct_pairs;
for (int i = 0; i < n; ++i) {
ll li, ri;
cin >> li >> ri;
process_interval(li, ri, A, B, distinct_pairs);
}
cout << distinct_pairs.size() << endl;
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |