QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#874912#2743. SeatsWansur11 297ms18404kbC++202.4kb2025-01-28 20:09:192025-01-28 20:09:19

Judging History

This is the latest submission verdict.

  • [2025-01-28 20:09:19]
  • Judged
  • Verdict: 11
  • Time: 297ms
  • Memory: 18404kb
  • [2025-01-28 20:09:19]
  • Submitted

answer

#include "seats.h"
#include <bits/stdc++.h>

using namespace std;
typedef long long ll;

const int maxn = 1e6 + 12;

pair<int, int> t[maxn * 4];
int p[maxn];
int r[maxn], c[maxn];
vector<int> a[maxn];
int n, m;

pair<int, int> operator + (pair<int, int> x, pair<int, int> y) {
    if(x.first == y.first) {
        return {x.first, x.second + y.second};
    }
    return min(x, y);
}

void build(int v, int tl, int tr) {
    if(tl == tr) {
        t[v] = {0, 1};
        return;
    }

    int mid = (tl + tr) >> 1;
    build(v * 2, tl, mid);
    build(v * 2 + 1, mid + 1, tr);
    t[v] = t[v * 2] + t[v * 2 + 1];
}

void push(int v, int tl, int tr) {
    if(tl > tr) return;
    t[v * 2].first += p[v];
    t[v * 2 + 1].first += p[v];
    p[v * 2] += p[v], p[v * 2 + 1] += p[v];
    p[v] = 0;
}

void upd(int v, int tl, int tr, int l, int r, int x) {
    push(v, tl, tr);
    if(tl > r || l > tr) return;
    if(tl >= l && tr <= r) {
        t[v].first += x;
        p[v] += x;
        return;
    }
    int mid = (tl + tr) / 2;
    upd(v * 2, tl, mid, l, r, x);
    upd(v * 2 + 1, mid + 1, tr, l, r, x);
    t[v] = t[v * 2] + t[v * 2 + 1];
}

void upd(int i, int j, int x) {
    vector<int> v = {a[i][j], a[i + 1][j], a[i][j + 1], a[i + 1][j + 1]};
    sort(v.begin(), v.end());
    upd(1, 1, n * m, v[0], v[1] - 1, x);
    upd(1, 1, n * m, v[2], v[3] - 1, 10 * x);
}

void update(int i, int j, int x) {
    for(int l = i - 1; l <= i; l++) {
        for(int r = j - 1; r <= j; r++) {
            upd(l, r, x);
        }
    }
}

void give_initial_chart(int H, int W, std::vector<int> R, std::vector<int> C) {
    n = H, m = W;
    for(int i = 0; i <= n + 1; i++) {
        a[i] = vector<int> (m + 2, 0);
        for(int j = 0; j <= m + 1; j++) {
            if(!i || i > n || !j || j > m) {
                a[i][j] = 1e9;
            }
        }
    }

    build(1, 1, n * m);

    for(int i = 1; i <= n * m; i++) {
        r[i] = R[i - 1] + 1, c[i] = C[i - 1] + 1;
        a[r[i]][c[i]] = i;
    }

    for(int i = 0; i <= n; i++) {
        for(int j = 0; j <= m; j++) {
            upd(i, j, 1);
        }
    }
}

int swap_seats(int i, int j) {
    i++, j++;
    update(r[i], c[i], -1);
    update(r[j], c[j], -1);
    swap(r[i], r[j]);
    swap(c[i], c[j]);
    a[r[i]][c[i]] = i, a[r[j]][c[j]] = j;
    update(r[i], c[i], 1);
    update(r[j], c[j], 1);
    return t[1].second;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 5
Accepted

Test #1:

score: 5
Accepted
time: 12ms
memory: 10100kb

input:

3 3 5000
2 2
1 2
0 2
0 1
0 0
2 1
1 1
1 0
2 0
6 0
5 7
6 4
3 2
0 2
0 2
7 0
7 0
3 2
3 6
0 2
3 5
2 6
2 0
8 6
0 6
1 3
1 8
8 1
4 2
1 8
2 5
1 3
7 0
6 5
6 3
2 8
8 2
1 3
8 5
6 3
8 0
4 8
6 8
7 8
4 3
3 6
5 0
8 5
1 7
2 6
1 2
5 4
5 1
7 6
8 4
7 3
6 8
8 3
0 3
6 3
0 8
0 5
7 2
0 3
7 5
4 5
3 5
1 0
0 8
7 0
2 5
5 8
7 4...

output:

4
5
4
4
3
4
2
4
4
3
3
3
3
2
2
2
3
2
3
3
2
2
2
2
2
2
2
2
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
4
4
4
4
4
4
2
2
2
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
2
2
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
3
2
3
2
2
2
2
2
2
2
2
3
3
3
4
4
4
4
4
4
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
2
2
2
2
3
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #2:

score: 5
Accepted
time: 18ms
memory: 10100kb

input:

6 6 5000
4 1
4 2
5 2
5 1
5 0
4 0
3 0
3 1
3 2
4 4
4 5
5 5
5 4
5 3
4 3
3 3
3 4
3 5
1 1
1 2
2 2
2 1
2 0
1 0
0 0
0 1
0 2
1 4
1 5
2 5
2 4
2 3
1 3
0 3
0 4
0 5
34 12
12 34
11 5
5 11
4 14
14 4
33 21
21 33
5 28
28 5
25 31
31 25
7 13
13 7
22 27
27 22
5 0
0 5
25 27
27 25
24 2
2 24
8 14
14 8
9 35
35 9
17 10
10 ...

output:

6
7
5
7
5
7
7
7
4
7
7
7
6
7
7
7
5
7
7
7
3
7
6
7
6
7
7
7
5
7
6
7
7
7
7
7
5
7
7
7
5
7
7
7
5
7
6
7
7
7
7
7
6
7
7
7
5
7
7
7
6
7
3
7
7
7
6
7
4
7
7
7
6
7
6
7
2
7
7
7
5
7
2
7
6
7
6
7
5
7
5
7
5
7
6
7
7
7
7
7
7
7
5
7
3
7
6
7
7
7
6
7
4
7
7
7
6
7
5
7
6
7
6
7
6
7
6
7
6
7
6
7
6
7
7
7
6
7
7
7
5
7
7
7
6
7
5
7
7
7
...

result:

ok 5000 numbers

Test #3:

score: 5
Accepted
time: 25ms
memory: 10104kb

input:

10 10 5000
3 7
1 7
4 9
3 2
7 0
8 1
5 4
9 9
9 6
3 6
6 5
7 1
4 1
9 2
8 8
2 5
0 4
2 0
6 6
8 2
8 9
8 5
9 4
9 0
6 0
8 3
0 7
2 4
9 7
6 1
4 0
3 0
7 6
0 2
7 7
3 3
3 1
4 7
5 0
4 6
4 5
2 6
4 2
0 9
1 0
0 3
4 8
3 8
2 3
5 8
5 1
7 3
5 6
8 0
1 5
6 8
3 4
2 9
0 0
5 3
1 2
1 6
1 3
8 4
9 3
7 9
2 2
1 1
3 5
5 9
7 5
1 4
7...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #4:

score: 5
Accepted
time: 16ms
memory: 10100kb

input:

1 100 5000
0 39
0 76
0 85
0 80
0 3
0 6
0 79
0 35
0 52
0 44
0 60
0 75
0 73
0 81
0 18
0 91
0 83
0 94
0 84
0 31
0 59
0 45
0 2
0 64
0 66
0 99
0 5
0 42
0 43
0 36
0 0
0 89
0 40
0 25
0 4
0 23
0 26
0 28
0 67
0 47
0 34
0 19
0 27
0 51
0 22
0 86
0 30
0 9
0 57
0 58
0 13
0 63
0 11
0 69
0 65
0 24
0 96
0 37
0 93
0...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #5:

score: 5
Accepted
time: 14ms
memory: 10104kb

input:

100 1 5000
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
14 0
15 0
16 0
17 0
18 0
19 0
20 0
21 0
22 0
23 0
24 0
25 0
26 0
27 0
28 0
29 0
30 0
31 0
32 0
33 0
34 0
35 0
36 0
37 0
38 0
39 0
40 0
41 0
42 0
43 0
44 0
45 0
46 0
47 0
48 0
49 0
50 0
51 0
52 0
53 0
54 0
55 0
56 0
57 0
58 0
59 0...

output:

61
100
91
100
81
100
65
100
52
100
82
100
72
100
97
100
66
100
99
100
12
100
36
100
78
100
59
100
55
100
19
100
66
100
86
100
85
100
85
100
89
100
62
100
86
100
67
100
98
100
97
100
68
100
65
100
70
100
87
100
34
100
77
100
62
100
24
100
79
100
33
100
64
100
93
100
60
100
68
100
52
100
69
100
88
100...

result:

ok 5000 numbers

Test #6:

score: 5
Accepted
time: 22ms
memory: 9984kb

input:

2 50 5000
1 47
1 48
1 49
0 47
0 48
0 49
1 44
1 45
1 46
0 44
0 45
0 46
1 41
1 42
1 43
0 41
0 42
0 43
1 38
1 39
1 40
0 38
0 39
0 40
1 35
1 36
1 37
0 35
0 36
0 37
1 32
1 33
1 34
0 32
0 33
0 34
1 29
1 30
1 31
0 29
0 30
0 31
1 26
1 27
1 28
0 26
0 27
0 28
1 23
1 24
1 25
0 23
0 24
0 25
1 20
1 21
1 22
0 20
...

output:

16
13
12
6
6
4
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2...

result:

ok 5000 numbers

Test #7:

score: 5
Accepted
time: 24ms
memory: 10040kb

input:

3 33 5000
0 16
0 28
2 9
0 10
0 24
2 6
0 21
0 27
1 1
2 14
2 21
1 14
1 29
0 22
2 24
0 11
1 19
1 16
1 12
0 15
2 1
1 2
2 10
0 29
0 1
0 13
0 31
1 27
1 23
0 8
0 30
0 26
1 21
0 0
2 13
0 6
1 11
2 4
2 16
1 6
1 24
2 3
2 18
1 18
1 15
0 5
2 19
1 17
2 27
2 12
1 5
0 4
1 10
1 13
2 30
2 32
1 30
0 32
2 31
0 18
2 25
...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #8:

score: 5
Accepted
time: 23ms
memory: 10100kb

input:

6 16 5000
5 0
4 0
3 0
2 0
1 0
0 0
4 2
3 2
3 1
4 1
5 1
5 2
5 3
4 3
3 3
1 2
0 2
0 1
1 1
2 1
2 2
2 3
1 3
0 3
4 5
3 5
3 4
4 4
5 4
5 5
5 6
4 6
3 6
1 5
0 5
0 4
1 4
2 4
2 5
2 6
1 6
0 6
4 8
3 8
3 7
4 7
5 7
5 8
5 9
4 9
3 9
1 8
0 8
0 7
1 7
2 7
2 8
2 9
1 9
0 9
4 11
3 11
3 10
4 10
5 10
5 11
5 12
4 12
3 12
1 11
...

output:

10
11
7
11
9
11
11
11
9
11
10
11
10
11
10
11
9
11
8
11
10
11
9
11
11
11
11
11
11
11
11
11
5
11
7
11
11
11
9
11
7
11
7
11
9
11
8
11
3
11
7
11
7
11
5
11
9
11
11
11
5
11
11
11
10
11
9
11
9
11
7
11
11
11
10
11
8
11
10
11
9
11
9
11
10
11
8
11
8
11
4
11
4
11
9
11
10
11
7
11
9
11
3
11
8
11
9
11
10
11
9
11
...

result:

ok 5000 numbers

Test #9:

score: 5
Accepted
time: 24ms
memory: 10104kb

input:

16 6 5000
0 0
0 1
0 2
0 3
0 4
0 5
2 1
2 2
1 2
1 1
1 0
2 0
3 0
3 1
3 2
2 4
2 5
1 5
1 4
1 3
2 3
3 3
3 4
3 5
5 1
5 2
4 2
4 1
4 0
5 0
6 0
6 1
6 2
5 4
5 5
4 5
4 4
4 3
5 3
6 3
6 4
6 5
8 1
8 2
7 2
7 1
7 0
8 0
9 0
9 1
9 2
8 4
8 5
7 5
7 4
7 3
8 3
9 3
9 4
9 5
11 1
11 2
10 2
10 1
10 0
11 0
12 0
12 1
12 2
11 4
...

output:

6
11
8
11
9
11
10
11
7
11
7
11
8
11
9
11
8
11
9
11
8
11
11
11
7
11
8
11
10
11
8
11
10
11
6
11
10
11
9
11
9
11
10
11
9
11
10
11
10
11
9
11
8
11
9
11
8
11
2
11
10
11
3
11
10
11
11
11
9
11
8
11
8
11
11
11
9
11
10
11
9
11
9
11
10
11
10
11
9
11
10
11
6
11
10
11
5
11
9
11
10
11
9
11
9
11
10
11
10
11
11
11...

result:

ok 5000 numbers

Test #10:

score: 5
Accepted
time: 25ms
memory: 10104kb

input:

33 3 5000
0 0
0 1
0 2
1 0
1 1
1 2
2 0
2 1
2 2
3 0
3 1
3 2
4 0
4 1
4 2
5 0
5 1
5 2
6 0
6 1
6 2
7 0
7 1
7 2
8 0
8 1
8 2
9 0
9 1
9 2
10 0
10 1
10 2
11 0
11 1
11 2
12 0
12 1
12 2
13 0
13 1
13 2
14 0
14 1
14 2
15 0
15 1
15 2
16 0
16 1
16 2
17 0
17 1
17 2
18 0
18 1
18 2
19 0
19 1
19 2
20 0
20 1
20 2
21 0
...

output:

22
19
12
12
6
6
6
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
4
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #11:

score: 5
Accepted
time: 21ms
memory: 10104kb

input:

50 2 5000
16 1
37 1
14 0
40 0
9 0
30 1
35 0
8 0
41 0
18 0
49 0
20 0
3 0
8 1
47 1
2 0
6 1
3 1
0 1
39 1
45 0
4 1
43 1
27 1
31 0
33 1
26 0
6 0
25 1
32 1
22 0
41 1
11 1
0 0
7 0
19 0
30 0
1 1
16 0
5 0
19 1
13 1
10 1
28 1
36 0
38 0
39 0
9 1
40 1
34 1
42 1
1 0
21 1
26 1
2 1
7 1
23 0
5 1
43 0
31 1
29 1
12 0...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #12:

score: 5
Accepted
time: 16ms
memory: 10096kb

input:

1 100 5000
0 98
0 99
0 96
0 97
0 94
0 95
0 92
0 93
0 90
0 91
0 88
0 89
0 86
0 87
0 84
0 85
0 82
0 83
0 80
0 81
0 78
0 79
0 76
0 77
0 74
0 75
0 72
0 73
0 70
0 71
0 68
0 69
0 66
0 67
0 64
0 65
0 62
0 63
0 60
0 61
0 58
0 59
0 56
0 57
0 54
0 55
0 52
0 53
0 50
0 51
0 48
0 49
0 46
0 47
0 44
0 45
0 42
0 43...

output:

34
51
45
51
39
51
36
51
29
51
41
51
45
51
42
51
14
51
38
51
46
51
35
51
46
51
38
51
32
51
20
51
45
51
35
51
43
51
39
51
25
51
31
51
49
51
35
51
20
51
42
51
41
51
31
51
32
51
21
51
38
51
31
51
19
51
32
51
44
51
41
51
37
51
43
51
42
51
17
51
45
51
42
51
16
51
44
51
31
51
36
51
28
51
35
51
38
51
31
51
...

result:

ok 5000 numbers

Subtask #2:

score: 6
Accepted

Dependency #1:

100%
Accepted

Test #13:

score: 6
Accepted
time: 58ms
memory: 10556kb

input:

100 100 5000
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
14 0
15 0
16 0
17 0
18 0
19 0
20 0
21 0
22 0
23 0
24 0
25 0
26 0
27 0
28 0
29 0
30 0
31 0
32 0
33 0
34 0
35 0
36 0
37 0
38 0
39 0
40 0
41 0
42 0
43 0
44 0
45 0
46 0
47 0
48 0
49 0
50 0
51 0
52 0
53 0
54 0
55 0
56 0
57 0
58 0
59...

output:

198
183
145
145
145
145
144
138
111
111
111
111
111
111
111
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
103
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
102
101
101
101
101
...

result:

ok 5000 numbers

Test #14:

score: 6
Accepted
time: 66ms
memory: 10556kb

input:

100 100 5000
93 27
66 88
66 58
40 1
82 10
54 95
23 72
46 55
22 8
10 26
89 34
18 18
92 16
56 30
88 94
28 34
41 30
10 65
96 1
61 66
62 53
32 77
82 95
39 11
12 28
52 89
80 5
24 38
16 2
76 79
51 94
47 82
70 5
20 86
38 80
89 66
88 34
84 73
77 45
63 59
23 2
56 44
95 10
67 65
47 25
0 0
51 55
71 45
2 14
64 ...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #15:

score: 6
Accepted
time: 38ms
memory: 12564kb

input:

1 10000 5000
0 8846
0 1791
0 4519
0 2360
0 808
0 3978
0 7443
0 123
0 7473
0 4151
0 3444
0 8330
0 1806
0 7497
0 9442
0 4529
0 4788
0 9295
0 8452
0 4721
0 472
0 2358
0 9940
0 345
0 7907
0 7510
0 6797
0 1610
0 1360
0 7293
0 8365
0 103
0 8489
0 4334
0 9953
0 7984
0 1000
0 2063
0 1170
0 9845
0 8584
0 327...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #16:

score: 6
Accepted
time: 29ms
memory: 11052kb

input:

10000 1 5000
0 0
1 0
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
14 0
15 0
16 0
17 0
18 0
19 0
20 0
21 0
22 0
23 0
24 0
25 0
26 0
27 0
28 0
29 0
30 0
31 0
32 0
33 0
34 0
35 0
36 0
37 0
38 0
39 0
40 0
41 0
42 0
43 0
44 0
45 0
46 0
47 0
48 0
49 0
50 0
51 0
52 0
53 0
54 0
55 0
56 0
57 0
58 0
59...

output:

5120
10000
6820
10000
5682
10000
8787
10000
4295
10000
6755
10000
9107
10000
8522
10000
8600
10000
6644
10000
9435
10000
6884
10000
6778
10000
9542
10000
8504
10000
3558
10000
5803
10000
8085
10000
9317
10000
4641
10000
4677
10000
5609
10000
6785
10000
4526
10000
3146
10000
8658
10000
8435
10000
845...

result:

ok 5000 numbers

Test #17:

score: 6
Accepted
time: 48ms
memory: 10580kb

input:

2 5000 5000
0 4445
1 776
0 374
0 2728
0 3856
0 4997
1 4997
1 4996
0 2749
1 1219
0 4993
0 4994
1 3493
0 332
1 4992
1 3076
1 216
1 1779
1 3131
1 894
0 3596
0 4736
1 1372
0 3435
1 4988
1 2281
1 4986
0 4986
0 1754
1 1123
1 4985
0 1107
1 4640
1 1724
0 1720
0 4982
1 429
0 2958
1 4980
0 2851
0 4978
1 2825
...

output:

2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
...

result:

ok 5000 numbers

Test #18:

score: 6
Accepted
time: 45ms
memory: 10556kb

input:

10 1000 5000
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
0 10
0 11
0 12
0 13
0 14
0 15
0 16
0 17
0 18
0 19
0 20
0 21
0 22
0 23
0 24
0 25
0 26
0 27
0 28
0 29
0 30
0 31
0 32
0 33
0 34
0 35
0 36
0 37
0 38
0 39
0 40
0 41
0 42
0 43
0 44
0 45
0 46
0 47
0 48
0 49
0 50
0 51
0 52
0 53
0 54
0 55
0 56
0 57
0 58
0 ...

output:

1001
1001
937
1001
146
1001
27
1001
1001
1001
180
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
363
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
519
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
1001
335
1001
1001
1001
1001
100...

result:

ok 5000 numbers

Test #19:

score: 6
Accepted
time: 46ms
memory: 12644kb

input:

1000 10 5000
0 9
0 8
0 7
0 6
0 5
0 4
0 3
0 2
0 1
0 0
1 9
1 8
1 7
1 6
1 5
1 4
1 3
1 2
1 1
1 0
2 9
2 8
2 7
2 6
2 5
2 4
2 3
2 2
2 1
2 0
3 9
3 8
3 7
3 6
3 5
3 4
3 3
3 2
3 1
3 0
4 9
4 8
4 7
4 6
4 5
4 4
4 3
4 2
4 1
4 0
5 9
5 8
5 7
5 6
5 5
5 4
5 3
5 2
5 1
5 0
6 9
6 8
6 7
6 6
6 5
6 4
6 3
6 2
6 1
6 0
7 9
7 8...

output:

813
1001
632
1001
947
1001
664
1001
842
1001
460
1001
820
1001
965
1001
921
1001
941
1001
846
1001
951
1001
543
1001
890
1001
776
1001
769
1001
688
1001
911
1001
956
1001
910
1001
576
1001
983
1001
626
1001
901
1001
733
1001
626
1001
349
1001
738
1001
667
1001
244
1001
195
1001
767
1001
619
1001
624...

result:

ok 5000 numbers

Test #20:

score: 6
Accepted
time: 38ms
memory: 10780kb

input:

5000 2 5000
4999 0
4999 1
4998 0
4998 1
4997 0
4997 1
4996 0
4996 1
4995 0
4995 1
4994 0
4994 1
4993 0
4993 1
4992 0
4992 1
4991 0
4991 1
4990 0
4990 1
4989 0
4989 1
4988 0
4988 1
4987 0
4987 1
4986 0
4986 1
4985 0
4985 1
4984 0
4984 1
4983 0
4983 1
4982 0
4982 1
4981 0
4981 1
4980 0
4980 1
4979 0
4...

output:

2582
5001
3656
5001
4627
5001
4088
5001
3653
5001
3725
5001
4917
5001
3030
5001
4459
5001
3438
5001
721
5001
4399
5001
2785
5001
2596
5001
2189
5001
3752
5001
3954
5001
3223
5001
3379
5001
2150
5001
3411
5001
3042
5001
4406
5001
1979
5001
2047
5001
4444
5001
4164
5001
3425
5001
3614
5001
1685
5001
1...

result:

ok 5000 numbers

Test #21:

score: 6
Accepted
time: 29ms
memory: 14320kb

input:

1 10000 5000
0 9998
0 9999
0 9996
0 9997
0 9994
0 9995
0 9992
0 9993
0 9990
0 9991
0 9988
0 9989
0 9986
0 9987
0 9984
0 9985
0 9982
0 9983
0 9980
0 9981
0 9978
0 9979
0 9976
0 9977
0 9974
0 9975
0 9972
0 9973
0 9970
0 9971
0 9968
0 9969
0 9966
0 9967
0 9964
0 9965
0 9962
0 9963
0 9960
0 9961
0 9958
...

output:

3615
5001
3627
5001
4267
5001
3144
5001
3197
5001
4300
5001
695
5001
3431
5001
2267
5001
4217
5001
4899
5001
3788
5001
3125
5001
4848
5001
731
5001
4280
5001
4200
5001
2611
5001
3900
5001
4732
5001
2111
5001
2539
5001
3739
5001
3496
5001
2447
5001
4392
5001
3530
5001
4840
5001
4035
5001
2253
5001
20...

result:

ok 5000 numbers

Test #22:

score: 6
Accepted
time: 30ms
memory: 11008kb

input:

10000 1 5000
9999 0
9996 0
9997 0
9998 0
9993 0
9994 0
9995 0
9990 0
9991 0
9992 0
9987 0
9988 0
9989 0
9984 0
9985 0
9986 0
9981 0
9982 0
9983 0
9978 0
9979 0
9980 0
9975 0
9976 0
9977 0
9972 0
9973 0
9974 0
9969 0
9970 0
9971 0
9966 0
9967 0
9968 0
9963 0
9964 0
9965 0
9960 0
9961 0
9962 0
9957 0
...

output:

942
3334
2300
3334
1582
3334
1148
3334
3299
3334
2391
3334
2609
3334
3322
3334
2575
3334
2851
3334
3032
3334
2690
3334
1082
3334
1739
3334
2020
3334
3267
3334
3013
3334
3052
3334
2141
3334
568
3334
1677
3334
3124
3334
1199
3334
1841
3334
2135
3334
1942
3334
1597
3334
2196
3334
2479
3334
3168
3334
32...

result:

ok 5000 numbers

Subtask #3:

score: 0
Runtime Error

Dependency #1:

100%
Accepted

Test #23:

score: 0
Runtime Error

input:

1000 1000 5000
76 345
393 693
808 571
34 799
674 539
21 736
917 353
948 429
775 484
259 968
384 429
860 308
518 652
8 647
258 110
630 335
631 188
431 283
640 784
706 235
466 641
213 751
861 461
851 867
413 634
572 283
938 126
967 262
612 762
192 354
472 604
417 911
4 546
101 459
946 104
230 636
705 ...

output:

Unauthorized output

result:


Subtask #4:

score: 0
Runtime Error

Test #33:

score: 6
Accepted
time: 53ms
memory: 16656kb

input:

101 101 5000
0 0
0 1
0 2
0 3
0 4
0 5
0 6
0 7
0 8
0 9
0 10
0 11
0 12
0 13
0 14
0 15
0 16
0 17
0 18
0 19
0 20
0 21
0 22
0 23
0 24
0 25
0 26
0 27
0 28
0 29
0 30
0 31
0 32
0 33
0 34
0 35
0 36
0 37
0 38
0 39
0 40
0 41
0 42
0 43
0 44
0 45
0 46
0 47
0 48
0 49
0 50
0 51
0 52
0 53
0 54
0 55
0 56
0 57
0 58
0 ...

output:

90
27
27
27
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
12
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
5
...

result:

ok 5000 numbers

Test #34:

score: 6
Accepted
time: 136ms
memory: 18404kb

input:

300 300 5000
0 0
0 1
1 1
1 0
0 2
1 2
2 2
2 1
2 0
0 3
1 3
2 3
3 3
3 2
3 1
3 0
0 4
1 4
2 4
3 4
4 4
4 3
4 2
4 1
4 0
0 5
1 5
2 5
3 5
4 5
5 5
5 4
5 3
5 2
5 1
5 0
0 6
1 6
2 6
3 6
4 6
5 6
6 6
6 5
6 4
6 3
6 2
6 1
6 0
0 7
1 7
2 7
3 7
4 7
5 7
6 7
7 7
7 6
7 5
7 4
7 3
7 2
33 46
7 0
0 8
1 8
2 8
3 8
4 8
5 8
6 8
7...

output:

18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
18
...

result:

ok 5000 numbers

Test #35:

score: 0
Runtime Error

input:

1000 1000 5000
999 0
999 1
999 2
998 2
997 2
997 1
997 0
998 0
998 1
999 3
999 4
999 5
998 5
997 5
997 4
997 3
998 3
998 4
999 6
999 7
999 8
998 8
997 8
997 7
997 6
998 6
998 7
999 9
999 10
999 11
998 11
997 11
997 10
997 9
998 9
998 10
999 12
999 13
999 14
998 14
997 14
997 13
997 12
998 12
998 13
...

output:

Unauthorized output

result:


Subtask #5:

score: 0
Runtime Error

Test #44:

score: 33
Accepted
time: 41ms
memory: 10200kb

input:

1 3 50000
0 1
0 2
0 0
0 2
2 0
2 1
0 1
1 0
0 1
1 2
1 2
1 2
0 2
1 0
0 2
2 0
1 2
2 1
2 0
0 1
0 2
1 2
1 0
1 0
1 2
0 1
1 0
0 2
0 2
2 1
0 2
1 0
1 2
2 1
2 1
1 2
0 1
1 2
0 1
0 2
1 2
0 2
2 1
2 0
1 2
1 0
1 0
2 1
1 0
1 0
2 1
1 2
0 2
2 0
1 0
2 0
0 2
1 0
0 2
1 2
2 1
0 1
0 2
1 0
2 1
2 0
1 2
0 1
2 0
2 1
2 0
0 2
1 ...

output:

2
3
3
3
3
3
2
3
2
3
3
3
3
2
3
3
3
2
3
3
3
2
2
2
3
2
3
3
3
3
3
3
3
3
2
2
3
3
2
3
3
2
2
2
3
3
3
2
3
3
3
3
2
3
3
3
2
3
3
2
2
3
3
2
2
3
3
2
3
3
2
2
2
2
3
2
3
3
3
3
3
2
3
2
3
2
2
2
2
3
3
3
3
3
3
3
2
2
3
3
3
2
3
2
3
3
3
2
2
3
2
3
3
3
3
3
3
3
3
3
2
3
3
2
3
3
3
3
2
3
3
3
3
3
3
2
3
3
3
3
3
2
3
3
2
3
3
3
3
2
...

result:

ok 50000 numbers

Test #45:

score: 33
Accepted
time: 93ms
memory: 10192kb

input:

1 10 50000
0 7
0 5
0 8
0 6
0 0
0 1
0 2
0 4
0 3
0 9
6 0
5 8
9 7
8 3
1 3
2 5
9 8
8 3
3 0
6 0
3 5
2 0
2 8
2 5
8 3
8 5
7 2
2 8
0 3
3 2
2 0
3 5
2 0
5 8
5 0
9 2
2 8
2 1
5 3
8 9
1 0
5 6
4 7
5 7
0 9
1 3
3 0
9 3
8 9
3 6
4 0
2 7
9 2
8 2
2 6
5 7
7 4
2 5
3 4
0 1
9 1
9 7
0 1
6 4
9 5
6 8
0 2
9 5
3 1
1 8
9 2
6 8
1...

output:

3
3
2
2
3
4
4
6
4
2
2
2
2
3
3
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
3
3
3
2
2
2
4
5
4
2
2
2
2
2
2
2
4
4
4
2
2
2
2
2
2
3
3
3
3
3
3
3
5
3
3
3
3
3
2
2
2
2
3
3
3
4
4
3
9
7
3
2
2
2
2
2
3
2
2
2
2
3
3
2
2
3
4
4
3
4
4
2
2
2
2
2
2
2
2
2
2
2
2
3
2
2
2
2
3
4
2
2
2
2
2
2
2
2
2
...

result:

ok 50000 numbers

Test #46:

score: 33
Accepted
time: 144ms
memory: 10200kb

input:

1 100 50000
0 98
0 99
0 96
0 97
0 94
0 95
0 92
0 93
0 90
0 91
0 88
0 89
0 86
0 87
0 84
0 85
0 82
0 83
0 80
0 81
0 78
0 79
0 76
0 77
0 74
0 75
0 72
0 73
0 70
0 71
0 68
0 69
0 66
0 67
0 64
0 65
0 62
0 63
0 60
0 61
0 58
0 59
0 56
0 57
0 54
0 55
0 52
0 53
0 50
0 51
0 48
0 49
0 46
0 47
0 44
0 45
0 42
0 4...

output:

47
51
23
51
43
51
28
51
11
51
30
51
48
51
34
51
24
51
21
51
32
51
40
51
47
51
36
51
36
51
47
51
41
51
19
51
46
51
30
51
23
51
19
51
45
51
43
51
23
51
46
51
52
51
49
51
45
51
30
51
34
51
29
51
46
51
23
51
37
51
15
51
42
51
29
51
20
51
9
51
30
51
28
51
15
51
32
51
48
51
31
51
23
51
50
51
22
51
14
51
4...

result:

ok 50000 numbers

Test #47:

score: 33
Accepted
time: 191ms
memory: 10220kb

input:

1 1000 50000
0 0
0 3
0 2
0 1
0 6
0 5
0 4
0 9
0 8
0 7
0 12
0 11
0 10
0 15
0 14
0 13
0 18
0 17
0 16
0 21
0 20
0 19
0 24
0 23
0 22
0 27
0 26
0 25
0 30
0 29
0 28
0 33
0 32
0 31
0 36
0 35
0 34
0 39
0 38
0 37
0 42
0 41
0 40
0 45
0 44
0 43
0 48
0 47
0 46
0 51
0 50
0 49
0 54
0 53
0 52
0 57
0 56
0 55
0 60
0 ...

output:

299
334
257
334
316
334
267
334
308
334
215
334
178
334
313
334
81
334
274
334
279
334
135
334
314
334
65
334
327
334
257
334
333
334
285
334
154
334
294
334
223
334
301
334
195
334
268
334
311
334
136
334
224
334
291
334
166
334
312
334
301
334
152
334
329
334
228
334
286
334
316
334
277
334
321
33...

result:

ok 50000 numbers

Test #48:

score: 33
Accepted
time: 297ms
memory: 14716kb

input:

1 10000 50000
0 9999
0 9998
0 9997
0 9996
0 9995
0 9994
0 9993
0 9992
0 9991
0 9990
0 9989
0 9988
0 9987
0 9986
0 9985
0 9984
0 9983
0 9982
0 9981
0 9980
0 9979
0 9978
0 9977
0 9976
0 9975
0 9974
0 9973
0 9972
0 9971
0 9970
0 9969
0 9968
0 9967
0 9966
0 9965
0 9964
0 9963
0 9962
0 9961
0 9960
0 9959...

output:

6234
2035
2035
1088
1088
1088
1088
1088
948
948
948
776
776
776
717
717
717
717
717
717
667
667
667
667
667
667
460
380
380
380
380
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
201
...

result:

ok 50000 numbers

Test #49:

score: 0
Runtime Error

input:

1 1000000 50000
0 999998
0 999999
0 999996
0 999997
0 999994
0 999995
0 999992
0 999993
0 999990
0 999991
0 999988
0 999989
0 999986
0 999987
0 999984
0 999985
0 999982
0 999983
0 999980
0 999981
0 999978
0 999979
0 999976
0 999977
0 999974
0 999975
0 999972
0 999973
0 999970
0 999971
0 999968
0 999...

output:

Unauthorized output

result:


Subtask #6:

score: 0
Skipped

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

0%