Submission #563518

#TimeUsernameProblemLanguageResultExecution timeMemory
563518Kanten4205Strange Device (APIO19_strange_device)C++17
10 / 100
1288 ms32236 KiB
#include <bits/stdc++.h>
using namespace std;
const long long MOD1 = 1000000007;
const long long MOD2 = 998244353;
typedef long long ll;
typedef pair<ll, ll> P;
const long long INF = 1e17;
void solve() {
    ll N, A, B; cin >> N >> A >> B;
    vector<P>T(N);
    ll sum = 0;
    for (ll i = 0; i < N; i++) {
        cin >> T[i].first >> T[i].second;
        sum += T[i].second - T[i].first + 1;
    }
    if (sum <= 1000000) {
        //subtask 1
        set<P>S;
        for (ll i = 0; i < N; i++) {
            for (ll j = T[i].first; j <= T[i].second; j++) {
                P a = make_pair((j + j / B) % A, j % B);
                S.insert(a);
            }
        }
        cout << S.size() << endl;
    }
}
int main() {
    ll T = 1; //cin >> T;
    for (ll i = 0; i < T; i++) {
        //cout << "Case #" << i + 1 << ": ";
        solve();
    }
}
#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...