Submission #217012

# Submission time Handle Problem Language Result Execution time Memory
217012 2020-03-28T17:45:01 Z sevlll Strange Device (APIO19_strange_device) C++17
65 / 100
790 ms 49748 KB
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <algorithm>
#include <cmath>
#include <vector>
#include <set>
#include <map>
#include <unordered_set>
#include <unordered_map>
#include <queue>
#include <ctime>
#include <cassert>
#include <complex>
#include <string>
#include <cstring>
#include <chrono>
#include <random>
#include <queue>
#include <bitset>

#define pb push_back
#define int long long
#define str string
using namespace std;
const int M = 1e9 + 7;

signed main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cout.tie(nullptr);
    int n, a, b;
    cin >> n >> a >> b;
    vector<pair<int, int>> pr(n);
    for (int i = 0; i < n; i++) cin >> pr[i].first >> pr[i].second;
    int g = __gcd(a, b+1);
    a /= g;
    __int128_t num = a * b;
    vector<pair<int, int>> ev;
    for (auto p : pr) {
        int l = p.first, r = p.second;
        l %= num;
        r %= num;
        if (r < l) {
            ev.pb({l, 1});
            ev.pb({num, -1});
            ev.pb({0, 1});
            ev.pb({r+1, -1});
        } else {
            ev.pb({l, 1});
            ev.pb({r+1, -1});
        }
    }
    sort(ev.begin(), ev.end());
    int bal = 0;
    int last = 0;
    int ans = 0;
    for (auto p : ev) {
        int x = p.first, type = p.second;
        if (bal) {
            ans += (x - last);
        }
        last = x;
        bal += type;
    }
    cout << ans;
}
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 11 ms 1536 KB Output is correct
3 Correct 11 ms 1536 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 4 ms 384 KB Output is correct
6 Correct 5 ms 384 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 5 ms 384 KB Output is correct
9 Correct 5 ms 384 KB Output is correct
10 Correct 5 ms 384 KB Output is correct
11 Correct 4 ms 384 KB Output is correct
12 Correct 6 ms 384 KB Output is correct
13 Correct 5 ms 384 KB Output is correct
14 Correct 5 ms 384 KB Output is correct
15 Correct 5 ms 384 KB Output is correct
16 Correct 11 ms 1664 KB Output is correct
17 Correct 75 ms 6636 KB Output is correct
18 Correct 4 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 384 KB Output is correct
2 Incorrect 4 ms 384 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 5 ms 512 KB Output is correct
3 Correct 7 ms 512 KB Output is correct
4 Correct 5 ms 512 KB Output is correct
5 Correct 437 ms 49412 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Correct 724 ms 49632 KB Output is correct
3 Correct 654 ms 49620 KB Output is correct
4 Correct 646 ms 49612 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Correct 724 ms 49632 KB Output is correct
3 Correct 654 ms 49620 KB Output is correct
4 Correct 646 ms 49612 KB Output is correct
5 Correct 4 ms 384 KB Output is correct
6 Correct 688 ms 49640 KB Output is correct
7 Correct 637 ms 49624 KB Output is correct
8 Correct 665 ms 49748 KB Output is correct
9 Correct 754 ms 49552 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 256 KB Output is correct
2 Correct 724 ms 49632 KB Output is correct
3 Correct 654 ms 49620 KB Output is correct
4 Correct 646 ms 49612 KB Output is correct
5 Correct 4 ms 384 KB Output is correct
6 Correct 64 ms 6636 KB Output is correct
7 Correct 71 ms 6636 KB Output is correct
8 Correct 63 ms 6636 KB Output is correct
9 Correct 67 ms 6636 KB Output is correct
10 Correct 63 ms 6636 KB Output is correct
11 Correct 66 ms 6636 KB Output is correct
12 Correct 64 ms 6636 KB Output is correct
13 Correct 72 ms 6636 KB Output is correct
14 Correct 66 ms 6640 KB Output is correct
15 Correct 80 ms 6768 KB Output is correct
16 Correct 72 ms 6764 KB Output is correct
17 Correct 66 ms 6636 KB Output is correct
18 Correct 662 ms 49620 KB Output is correct
19 Correct 623 ms 49492 KB Output is correct
20 Correct 764 ms 49620 KB Output is correct
21 Correct 82 ms 6764 KB Output is correct
22 Correct 60 ms 6636 KB Output is correct
23 Correct 188 ms 22680 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 74 ms 6636 KB Output is correct
3 Correct 72 ms 6764 KB Output is correct
4 Correct 790 ms 49624 KB Output is correct
5 Correct 82 ms 6808 KB Output is correct
6 Correct 73 ms 6764 KB Output is correct
7 Correct 75 ms 6636 KB Output is correct
8 Correct 77 ms 6764 KB Output is correct
9 Correct 72 ms 6636 KB Output is correct
10 Correct 79 ms 6636 KB Output is correct
11 Correct 73 ms 6764 KB Output is correct
12 Correct 65 ms 6636 KB Output is correct
13 Correct 74 ms 6636 KB Output is correct
14 Correct 730 ms 49528 KB Output is correct
15 Correct 74 ms 6636 KB Output is correct
16 Correct 640 ms 49632 KB Output is correct
17 Correct 633 ms 49652 KB Output is correct
18 Correct 5 ms 384 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 5 ms 384 KB Output is correct
2 Correct 11 ms 1536 KB Output is correct
3 Correct 11 ms 1536 KB Output is correct
4 Correct 5 ms 384 KB Output is correct
5 Correct 4 ms 384 KB Output is correct
6 Correct 5 ms 384 KB Output is correct
7 Correct 5 ms 384 KB Output is correct
8 Correct 5 ms 384 KB Output is correct
9 Correct 5 ms 384 KB Output is correct
10 Correct 5 ms 384 KB Output is correct
11 Correct 4 ms 384 KB Output is correct
12 Correct 6 ms 384 KB Output is correct
13 Correct 5 ms 384 KB Output is correct
14 Correct 5 ms 384 KB Output is correct
15 Correct 5 ms 384 KB Output is correct
16 Correct 11 ms 1664 KB Output is correct
17 Correct 75 ms 6636 KB Output is correct
18 Correct 4 ms 384 KB Output is correct
19 Correct 4 ms 384 KB Output is correct
20 Incorrect 4 ms 384 KB Output isn't correct
21 Halted 0 ms 0 KB -