QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#738528#7646. 优惠购物KellyWLJ100 ✓536ms148560kbC++174.3kb2024-11-12 19:17:222024-11-12 19:17:26

Judging History

你现在查看的是最新测评结果

  • [2024-11-12 19:17:26]
  • 评测
  • 测评结果:100
  • 用时:536ms
  • 内存:148560kb
  • [2024-11-12 19:17:22]
  • 提交

answer

#include <bits/stdc++.h>
#define fi first
#define se second
#define pb push_back
using namespace std;

using ll = long long;
const ll N = 1000010, inf = 3e15, SZ = (1 << 18) + 5;
static char buf[SZ], *bgn = buf, *til = buf;
char getc() {
    if(bgn == til)  bgn = buf, til = buf + fread(buf, 1, SZ, stdin);
    return bgn == til ? EOF : *bgn++;
}
template<typename T>
void read(T &x) {
    char ch = getc();  T fh = 0;   x = 0;
    while(ch < '0' || ch > '9')    fh |= (ch == '-'), ch = getc();
    while(ch >= '0' && ch <= '9')   x = x * 10 + ch - '0', ch = getc();
    x = fh ? -x : x;
}
template<typename Type, typename... argc>
void read(Type &x, argc &...args)   {read(x), read(args...);}
template<typename T>
void print(T x) {
    if(x < 0)  putchar('-'), x = -x;
    if(x / 10)  print(x / 10);
    putchar(x % 10 + '0');
}
// 好牛的贪心啊,最后一部分感性理解每次取大的很优,但感觉严谨证明有点困难啊......
int n, m, cnt;
ll s[N], x[N], a[N], b[N], res[N], lsh[N], c, ans;
vector<int> upd[N];
struct segtree {
    ll mn[N << 2], tag[N << 2];
    int ls(int x)   {return x << 1;}
    int rs(int x)   {return x << 1 | 1;}
    void pushup(int x)  {mn[x] = min(mn[ls(x)], mn[rs(x)]);}
    void upd(int x, ll val) {mn[x] += val, tag[x] += val;}
    void pushdown(int x)    {if(tag[x] != 0)    upd(ls(x), tag[x]), upd(rs(x), tag[x]), tag[x] = 0;}
    void build(int l, int r, int p) {
        tag[p] = 0;
        if(l == r)  return void(mn[p] = res[l]);
        int mid = (l + r) >> 1;
        build(l, mid, ls(p)), build(mid + 1, r, rs(p)), pushup(p);
    }
    void update(int l, int r, ll val, int nl = 1, int nr = n, int p = 1) {
        if(l > r)   return;
        if(l <= nl && nr <= r)  return upd(p, val);
        int mid = (nl + nr) >> 1;   pushdown(p);
        if(mid >= l)    update(l, r, val, nl, mid, ls(p));
        if(mid < r) update(l, r, val, mid + 1, nr, rs(p));
        pushup(p);
    }
    ll query(int l, int r, int nl = 1, int nr = n, int p = 1) {
        if(l > r)   return inf;
        if(l <= nl && nr <= r)  return mn[p];
        int mid = (nl + nr) >> 1;   ll res = inf;   pushdown(p);
        if(mid >= l)    res = min(res, query(l, r, nl, mid, ls(p)));
        if(mid < r) res = min(res, query(l, r, mid + 1, nr, rs(p)));
        return res;
    }
}tree;
void mian() {
    read(n, m, c), s[0] = m, cnt = ans = 0;
    for(int i = 1; i <= n; ++i) read(a[i]), x[i] = 0, upd[i].clear();
    for(int i = 1; i <= n; ++i) read(b[i]);
    for(int i = 1; i <= n; ++i) {
        x[i] = min({a[i] % c, s[i - 1], b[i]});
        s[i] = s[i - 1] + (a[i] - x[i]) / c - x[i];
    }
    ll tmp = inf; // min_{j=i}^n s_j - x_{j+1}
    for(int i = n; i > 0; --i) {
        ll num = min({(b[i] - x[i]) / c, (s[i - 1] - x[i]) / c, tmp / (c + 1)}); 
        x[i] += num * c, tmp = min(tmp - num * (c + 1), s[i - 1] - x[i]); // j\in [i, n] s_j \gets s_j - num * (c + 1)
    }
    for(int i = 1; i <= n; ++i) s[i] = s[i - 1] + (a[i] - x[i]) / c - x[i], res[i] = s[i - 1] - x[i], lsh[++cnt] = b[i] - x[i];
    sort(lsh + 1, lsh + cnt + 1), cnt = unique(lsh + 1, lsh + cnt + 1) - (lsh + 1), reverse(lsh + 1, lsh + cnt + 1);
    tree.build(1, n, 1), lsh[cnt + 1] = 0;
    for(int i = 1; i <= n; ++i) {
        int p = lower_bound(lsh + 1, lsh + cnt + 1, b[i] - x[i], greater<ll>()) - lsh;
        upd[p].pb(i);
        // assert(res[i] >= 0), assert(b[i] >= x[i]);
    }
    priority_queue<int> heap; // \forall j < i, d_j \le d_i
    for(int i = 1; i <= cnt; ++i) {
        for(int x : upd[i]) heap.push(x);
        while(!heap.empty()) {
            int x = heap.top(); 
            ll d = min(tree.query(x, x), tree.query(x + 1, n) - 1); // d_i = min(res_i, min_{j>i} res_j - 1)
            if(d <= lsh[i + 1])   break;
            heap.pop();
            ll num = min({d, lsh[i], c - 1});
            ::x[x] += num, tree.update(x + 1, n, -num - 1), tree.update(x, x, -num);
        }
    }   
    for(int i = 1; i <= n; ++i) ans += a[i] - x[i];
    print(ans), putchar('\n');
}
int main() {
    #ifdef Kelly
        freopen("in.txt", "r", stdin);
        freopen("out.txt", "w", stdout);
        freopen("err.txt", "w", stderr);
    #endif
    int T = 1;  read(T);
    while(T--)  mian();
    return 0;
}

这程序好像有点Bug,我给组数据试试?

詳細信息

Subtask #1:

score: 5
Accepted

Test #1:

score: 5
Accepted
time: 0ms
memory: 42528kb

input:

5
10 9 8
10 5 1 2 10 9 2 9 8 8
5 3 1 1 7 2 2 1 3 0
10 1 5
3 2 6 10 5 10 1 4 8 1
1 2 5 6 2 3 1 3 6 1
10 6 10
5 4 9 5 4 10 8 5 2 4
2 4 2 5 1 1 7 5 0 0
10 5 10
6 2 7 4 3 8 10 5 5 4
1 0 6 3 3 5 4 5 0 0
10 6 12
6 8 7 3 1 4 10 2 9 10
0 3 1 3 1 3 1 0 4 7

output:

51
42
49
48
54

result:

ok 5 lines

Test #2:

score: 5
Accepted
time: 0ms
memory: 40476kb

input:

5
10 8 16
2 4 3 3 10 1 8 7 1 10
2 1 1 2 9 0 2 2 1 0
10 6 5
1 8 7 1 5 1 2 5 5 2
1 6 0 0 4 1 0 0 0 0
10 9 9
10 5 3 1 2 1 9 3 1 10
3 0 2 0 2 1 8 2 1 9
10 4 8
1 4 7 9 2 4 7 9 4 6
1 3 2 4 1 0 4 0 4 2
10 10 7
5 1 6 4 7 5 10 6 2 7
2 0 3 4 5 4 7 4 2 1

output:

41
29
34
47
41

result:

ok 5 lines

Test #3:

score: 5
Accepted
time: 4ms
memory: 42724kb

input:

5
10 2 18
2 7 3 1 2 2 10 3 10 9
1 7 2 0 1 1 8 2 8 8
10 6 17
10 7 9 6 8 2 9 5 5 4
10 1 5 5 3 0 4 1 2 2
10 5 10
1 6 3 8 7 7 7 9 7 4
0 3 2 4 1 0 5 5 4 2
10 2 7
6 2 9 9 3 8 7 8 10 10
1 0 8 3 2 2 0 2 1 2
10 6 12
7 10 8 1 2 4 7 8 3 7
6 10 1 0 0 4 0 8 1 0

output:

47
59
54
64
51

result:

ok 5 lines

Subtask #2:

score: 10
Accepted

Test #4:

score: 10
Accepted
time: 487ms
memory: 142144kb

input:

1
1000000 75424149 4
15519624 393474467 66570532 20552964 884794646 633920424 885627436 891022137 207531470 263467015 853563838 909020263 225156643 843397191 555130236 28501962 70380880 400094075 351542363 118716292 772000502 495729611 777038576 845271464 346378405 179347308 90713310 683636539 92786...

output:

400011543086868

result:

ok single line: '400011543086868'

Test #5:

score: 10
Accepted
time: 536ms
memory: 144908kb

input:

1
1000000 290027657 13
304913277 796843021 516017645 319050677 454050563 311934679 136029540 790505371 382952680 125583971 728245481 902515808 812248168 868676972 790078499 415156440 464267202 582710403 940789661 787826252 967007727 383461878 355142003 38823668 153257857 934717389 686901242 36112867...

output:

464602224908438

result:

ok single line: '464602224908438'

Test #6:

score: 10
Accepted
time: 252ms
memory: 45780kb

input:

100
10000 555225459 12
283175257 921770254 7299205 304241949 267180864 651891533 164511492 581458656 706908893 739975249 933584512 596665557 469159082 990911824 978336498 995722553 404329338 864926421 108033148 939393219 883683355 155563579 13934792 536244919 137715285 306298646 959297422 220012187 ...

output:

4588217379181
4629253346598
4052616322788
4685633463207
4611498546635
3286925309424
4700753892257
4389905037385
4633607365103
4688195153421
4178811594145
4752054242985
4664825925836
4665776689820
3962158296116
4640134664463
3364786516333
4529228891211
4651138496620
4597397577514
3343211719775
377293...

result:

ok 100 lines

Subtask #3:

score: 10
Accepted

Dependency #1:

100%
Accepted

Test #7:

score: 10
Accepted
time: 6ms
memory: 40372kb

input:

1
500 225 2
0 0 2 1 2 1 4 0 0 0 0 0 2 1 2 0 0 1 0 0 1 1 2 0 2 2 3 1 0 0 2 2 0 1 1 2 1 3 1 3 2 0 0 1 2 0 2 0 0 1 1 0 1 1 1 0 1 0 2 3 0 0 1 3 1 0 2 2 1 1 4 1 1 2 1 1 0 3 2 0 0 0 1 3 0 1 0 1 2 1 0 0 2 1 1 1 2 3 2 2 2 1 1 2 2 0 0 1 1 0 0 1 0 1 1 0 1 3 1 2 0 2 2 1 1 2 0 1 0 4 2 0 0 0 0 1 4 1 0 1 0 1 0 0 ...

output:

231

result:

ok single line: '231'

Test #8:

score: 10
Accepted
time: 6ms
memory: 42544kb

input:

1
500 253 10
1 2 1 1 0 0 1 3 3 1 0 0 0 0 0 0 0 2 1 0 0 2 1 0 0 0 2 0 0 1 2 1 0 2 2 1 1 2 1 0 2 1 0 0 0 1 0 2 2 0 1 0 0 1 0 0 1 1 1 0 1 1 0 1 2 0 1 0 0 1 1 1 0 0 0 1 2 2 1 1 1 0 3 1 0 0 0 1 0 1 1 4 3 1 0 0 0 1 0 1 3 1 1 1 1 4 1 0 0 0 1 1 1 2 2 0 0 3 0 0 1 0 2 2 1 0 2 0 1 0 2 0 0 1 1 0 2 1 0 1 1 1 0 0...

output:

278

result:

ok single line: '278'

Test #9:

score: 10
Accepted
time: 4ms
memory: 42468kb

input:

100
5 3 11
0 1 3 0 1
0 0 0 0 0
5 3 11
0 0 2 2 1
0 0 0 1 1
5 3 10
2 1 0 1 1
2 1 0 0 1
5 3 11
2 2 0 0 1
0 0 0 0 1
5 2 11
0 0 4 0 1
0 0 3 0 1
5 5 10
2 0 0 0 3
1 0 0 0 1
5 5 11
3 1 1 0 0
3 0 1 0 0
5 2 11
0 1 2 0 2
0 1 2 0 0
5 4 10
2 1 1 1 0
0 1 0 1 0
5 4 10
1 1 1 2 0
1 0 1 2 0
5 2 11
2 0 3 0 0
1 0 3 0 0...

output:

5
3
2
4
3
3
1
3
3
1
3
3
4
1
3
3
1
4
3
4
2
5
3
4
4
2
4
2
2
3
4
4
3
3
2
3
0
2
3
4
4
3
3
2
2
4
5
2
4
4
3
3
4
3
4
2
3
3
3
2
4
4
5
2
4
2
4
2
3
4
4
4
4
2
2
1
2
4
1
3
4
3
3
0
3
5
5
2
4
3
2
3
4
3
3
4
2
3
5
3

result:

ok 100 lines

Test #10:

score: 10
Accepted
time: 0ms
memory: 40520kb

input:

50
10 4 11
2 0 0 2 0 0 1 1 4 0
2 0 0 1 0 0 1 1 2 0
10 9 11
0 1 2 0 1 1 1 2 2 0
0 0 2 0 1 0 1 1 2 0
10 4 11
1 2 1 3 0 0 2 0 1 0
1 0 1 3 0 0 0 0 0 0
10 9 10
1 0 1 1 2 1 0 1 2 1
1 0 0 0 2 0 0 1 0 0
10 7 11
0 3 0 2 3 0 0 2 0 0
0 3 0 0 3 0 0 2 0 0
10 9 10
0 1 0 1 1 1 1 2 1 2
0 0 0 0 1 1 1 0 0 0
10 6 11
0...

output:

6
3
6
6
3
7
7
6
2
7
3
6
8
4
6
5
3
5
8
8
6
5
7
8
8
8
4
8
5
4
3
5
7
5
4
8
5
5
7
6
7
6
7
8
8
4
2
4
7
6

result:

ok 50 lines

Subtask #4:

score: 10
Accepted

Dependency #3:

100%
Accepted

Test #11:

score: 10
Accepted
time: 5ms
memory: 44512kb

input:

60
10 17 2
14 8 11 5 9 14 9 9 8 13
12 3 8 5 9 1 0 4 2 10
10 13 2
11 11 10 15 8 12 7 8 8 10
11 6 3 8 2 4 7 8 1 4
10 7 2
18 6 15 6 11 6 12 8 9 9
15 0 9 0 5 6 0 6 4 3
10 4 3
12 8 16 11 9 5 6 9 10 14
0 0 5 7 8 1 6 2 1 5
10 23 3
10 14 11 7 9 7 7 12 17 6
5 8 1 5 5 7 7 1 4 3
10 27 3
13 7 11 12 11 12 10 9 9...

output:

57
60
64
75
60
55
68
67
62
76
76
69
71
61
73
60
54
62
62
67
61
71
75
64
63
73
73
56
65
67
63
40
40
46
57
58
53
64
64
46
42
30
39
46
61
54
55
48
64
51
55
57
57
73
40
63
56
70
55
38

result:

ok 60 lines

Test #12:

score: 10
Accepted
time: 3ms
memory: 40476kb

input:

60
10 4 2
6 14 13 9 5 12 14 12 8 7
2 11 3 3 5 2 11 1 3 2
10 14 3
12 11 5 11 13 12 14 5 9 8
12 9 4 11 2 7 4 4 1 3
10 39 3
8 11 9 17 4 16 7 6 15 7
8 2 9 8 3 12 7 1 2 2
10 4 2
9 15 12 11 10 8 6 7 10 12
9 2 6 3 8 1 3 3 4 0
10 4 2
13 10 9 8 7 6 15 11 15 6
8 3 7 2 2 5 0 0 7 2
10 18 3
12 9 8 8 9 9 11 12 9 ...

output:

68
66
49
70
71
64
71
67
73
69
66
65
66
69
60
66
76
64
68
69
68
67
77
67
60
71
76
67
62
65
52
67
48
73
61
51
48
71
40
60
50
49
60
49
66
52
35
68
52
45
32
69
64
56
48
66
58
67
57
50

result:

ok 60 lines

Test #13:

score: 10
Accepted
time: 8ms
memory: 40480kb

input:

6
1000 129 2
0 1 1 0 3 2 0 0 3 0 0 1 0 1 1 0 0 0 0 3 0 1 2 1 3 1 2 2 1 1 1 0 1 1 0 0 1 1 2 1 2 0 1 0 0 1 1 2 1 1 0 0 1 0 1 0 1 0 0 1 2 1 2 2 0 0 0 0 1 1 1 1 0 0 1 0 3 1 0 1 1 2 2 1 0 1 1 3 0 1 1 2 0 0 1 1 0 1 1 2 2 0 1 0 1 1 1 0 1 1 1 1 1 1 0 0 1 0 1 0 1 0 0 1 2 1 1 2 2 1 0 1 1 0 2 1 0 0 2 0 0 4 1 1...

output:

648
569
721
517
613
515

result:

ok 6 lines

Test #14:

score: 10
Accepted
time: 4ms
memory: 40796kb

input:

1
4000 1097 3
4 0 2 3 1 0 2 3 0 3 2 2 1 0 1 3 3 1 0 3 3 0 0 0 0 1 1 1 3 1 1 3 1 3 0 0 5 2 3 3 2 1 2 3 3 1 2 0 0 0 1 2 2 2 2 3 4 1 0 0 1 1 1 0 0 2 0 2 0 2 0 1 3 2 1 1 3 1 4 1 2 1 1 1 0 3 1 1 1 0 1 1 1 1 0 1 1 1 0 2 2 4 1 1 1 2 3 1 1 0 2 1 1 2 2 0 1 1 1 1 3 2 1 0 2 2 4 3 2 1 2 2 0 0 0 3 0 4 1 3 3 0 1 ...

output:

4106

result:

ok single line: '4106'

Test #15:

score: 10
Accepted
time: 6ms
memory: 44856kb

input:

1
6000 3193 3
0 0 2 0 1 0 1 0 2 0 1 1 1 1 1 2 1 3 0 0 0 0 2 3 0 2 2 1 1 0 0 4 0 0 1 1 0 1 0 2 0 1 3 2 1 1 1 0 1 0 1 2 1 0 0 1 1 1 1 1 2 0 2 0 1 2 2 1 3 0 0 0 1 0 1 0 0 3 0 0 2 1 0 1 1 0 0 1 2 0 3 1 1 3 1 2 1 1 0 1 1 0 0 2 0 2 2 0 1 0 0 0 1 1 2 1 0 0 0 2 1 0 0 0 2 0 0 1 0 0 1 1 1 2 0 0 2 0 1 2 1 4 1 ...

output:

3041

result:

ok single line: '3041'

Test #16:

score: 10
Accepted
time: 0ms
memory: 40504kb

input:

60
100 47 9
0 0 1 0 2 1 3 0 0 0 3 0 2 1 1 0 1 3 3 0 0 0 1 1 0 2 1 0 1 4 2 1 0 0 3 1 2 0 0 0 1 2 0 0 1 1 0 0 1 1 0 0 0 0 1 2 2 1 1 0 2 0 0 0 2 2 1 0 2 1 1 3 0 1 1 2 1 2 3 1 1 0 0 1 0 1 1 0 0 1 0 2 1 1 3 2 1 3 3 0
0 0 1 0 0 0 1 0 0 0 3 0 1 0 1 0 1 2 2 0 0 0 0 1 0 2 1 0 1 4 2 1 0 0 3 0 0 0 0 0 1 0 0 0 ...

output:

53
54
50
72
92
85
55
67
62
49
52
67
61
64
61
52
69
80
49
68
73
54
68
59
54
53
50
93
59
56
76
51
57
49
47
53
54
49
51
48
47
58
47
76
57
92
58
47
55
52
57
47
55
44
48
44
61
85
59
68

result:

ok 60 lines

Subtask #5:

score: 10
Accepted

Dependency #4:

100%
Accepted

Test #17:

score: 10
Accepted
time: 6ms
memory: 44792kb

input:

1
6000 46 2
17 6 8 3 6 10 16 15 4 9 19 8 14 2 1 12 9 15 2 4 10 5 12 2 18 15 1 9 3 5 13 18 18 19 2 14 3 11 5 5 1 11 13 17 16 15 20 2 15 17 2 18 2 10 9 4 10 7 1 13 14 12 16 1 2 15 8 6 4 3 3 9 14 1 1 5 11 14 7 13 17 11 10 3 1 3 1 1 18 1 16 7 6 1 12 2 2 20 12 6 3 13 13 17 14 13 3 3 4 10 20 15 12 1 5 9 8...

output:

41940

result:

ok single line: '41940'

Test #18:

score: 10
Accepted
time: 0ms
memory: 41188kb

input:

1
6000 386343231 9449040
30677995 606166482 64470244 539919722 817757337 20170496 579607834 689795263 524957736 546656764 361028698 391584495 524047482 327296033 847341619 52129032 67870655 834711359 761876501 15964444 70523462 444693929 232328662 142733662 685263085 272541277 836463638 343778726 26...

output:

3030427552190

result:

ok single line: '3030427552190'

Test #19:

score: 10
Accepted
time: 0ms
memory: 41000kb

input:

1
6000 354247996 3443180
213864151 765837831 238626006 567010459 275289808 310410229 677785592 209166281 780779218 306065033 938121977 930688154 667094038 260420500 853609748 415404266 799767690 363380476 161106208 445563730 836493546 888755766 552783946 758932491 350484233 736129127 444800319 78929...

output:

2964681340723

result:

ok single line: '2964681340723'

Test #20:

score: 10
Accepted
time: 3ms
memory: 44612kb

input:

600
10 7 2
4 20 22 27 1 19 4 21 13 5
4 13 2 9 1 7 4 10 9 1
10 18 3
5 28 11 30 18 7 14 4 1 7
4 27 0 6 6 1 8 3 0 0
10 30 2
19 23 6 13 5 24 19 18 9 14
13 14 0 12 5 1 0 15 4 9
10 2 2
7 19 19 6 3 14 25 22 6 20
3 12 7 3 3 5 6 0 2 6
10 9 3
18 1 30 5 18 3 5 23 27 18
17 1 23 4 5 0 5 5 0 12
10 4 3
1 17 28 14 ...

output:

88
83
82
107
108
93
95
79
102
152
140
113
104
101
123
113
80
95
97
94
90
91
140
92
120
125
85
72
99
120
79
123
154
101
129
95
78
93
100
91
107
112
78
127
75
115
119
108
166
99
102
99
113
79
111
109
100
78
113
97
117
89
112
85
64
120
98
128
89
94
79
109
81
111
129
119
101
97
102
68
65
84
83
125
80
12...

result:

ok 600 lines

Test #21:

score: 10
Accepted
time: 3ms
memory: 42488kb

input:

600
10 11 3
25 6 9 6 12 24 13 21 17 28
23 0 2 2 2 4 11 8 6 7
10 3 2
12 3 4 21 9 24 21 11 13 9
11 1 1 2 1 10 11 1 11 5
10 4 3
30 5 17 19 12 24 15 29 5 24
22 1 8 4 2 0 9 13 0 7
10 1 4
22 22 19 23 8 1 4 10 1 6
15 5 2 18 3 1 4 0 0 6
10 9 2
18 8 2 28 16 29 23 5 25 14
13 4 2 0 11 12 5 1 4 5
10 28 3
28 16 ...

output:

118
84
137
93
119
73
69
89
132
89
63
134
137
114
83
146
133
116
83
70
90
113
153
95
129
94
109
92
105
85
117
102
75
117
107
83
101
73
138
71
74
116
89
110
101
52
100
108
95
102
101
124
156
105
97
80
126
95
137
91
120
138
137
112
123
99
77
109
119
90
90
90
153
71
88
91
78
97
134
78
101
119
116
98
157...

result:

ok 600 lines

Test #22:

score: 10
Accepted
time: 4ms
memory: 40544kb

input:

6
1000 1 4
25 38 50 35 32 40 10 25 40 8 15 26 11 50 22 43 4 26 19 6 33 10 40 38 44 26 4 49 47 3 28 21 15 2 20 15 49 39 31 33 20 1 13 9 45 6 46 37 12 44 41 15 2 17 8 17 5 19 42 3 25 6 3 10 47 49 41 7 25 5 24 23 22 49 47 28 2 42 31 5 16 50 38 8 17 20 32 40 43 4 22 4 37 48 32 20 9 24 18 14 14 30 16 10 ...

output:

20257
20204
20696
491590464497
512942236585
499393560870

result:

ok 6 lines

Test #23:

score: 10
Accepted
time: 0ms
memory: 42736kb

input:

1
6000 4 2
24 20 26 21 20 9 23 9 10 21 6 29 30 12 5 12 19 21 27 16 3 22 10 17 5 2 19 2 19 10 6 19 30 15 7 7 1 27 6 14 10 17 16 29 2 22 11 29 24 11 24 23 1 25 3 23 15 30 15 18 6 20 24 14 28 20 9 4 7 19 8 21 5 17 28 27 10 5 11 17 3 2 11 20 22 1 15 11 7 14 16 17 20 1 17 8 6 20 29 14 14 14 19 26 20 26 2...

output:

62501

result:

ok single line: '62501'

Subtask #6:

score: 15
Accepted

Test #24:

score: 15
Accepted
time: 4ms
memory: 40768kb

input:

600
10 21 2
1434256 1792820 8964100 10756920 6454152 717128 9681228 7529844 7171280 10398356
1075692 1075692 1434256 10039792 358564 717128 717128 5737024 3227076 1792820
10 5 4
5500368 6875460 4125274 687544 5500368 4469049 4125276 2750183 9969416 5156593
4469049 3781503 687546 0 1718865 343773 0 2...

output:

46254742
42284068
28465970
36815342
18797080
16608540
59809954
55963386
98157466
99455211
58990996
4474138
59994584
40677040
117326435
26562075
51644186
94269994
59007134
38720301
55628210
40921356
30237996
20727720
83424160
84045033
66629574
18910773
84890678
72094414
49832625
110722258
1360310
120...

result:

ok 600 lines

Test #25:

score: 15
Accepted
time: 27ms
memory: 42804kb

input:

2000
10 19 8
6876660 3438330 687664 11690316 2062992 2062992 2062992 687666 687666 1375330
6876660 2062998 0 5501328 0 0 0 687666 687666 687666
10 15 3
4087344 17371212 15327539 13283868 16349376 9196524 5109180 16349376 7152852 2043672
4087344 15327540 12262032 0 0 2043672 4087344 7152852 4087344 2...

output:

28194264
79703196
11089764
62810972
41503410
26040944
91781613
70998177
18207816
55013070
7566990
59042320
17974772
28271700
5677866
9725704
1225548
29982198
17802890
343025
45817818
73177656
86443886
15493720
79583772
32225792
56508512
62526146
37987857
105719026
44344500
16914540
65295200
2337432
...

result:

ok 2000 lines

Test #26:

score: 15
Accepted
time: 16ms
memory: 43504kb

input:

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

output:

71942
79648
80304
80156
78462
78255
78279
80196
71584
80160

result:

ok 10 lines

Test #27:

score: 15
Accepted
time: 20ms
memory: 61484kb

input:

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

output:

784158

result:

ok single line: '784158'

Test #28:

score: 15
Accepted
time: 77ms
memory: 68676kb

input:

1
200000 625508899 15
345213785 511317551 965642081 319470068 565100537 333251174 841352736 179023177 862789508 166652869 2186333 60513700 978658289 659875995 79575594 140295543 789154341 115117210 886053005 322688547 369817688 522371031 674303291 504515442 937206505 363662373 789414269 429761083 20...

output:

93707621177370

result:

ok single line: '93707621177370'

Test #29:

score: 15
Accepted
time: 34ms
memory: 40772kb

input:

10000
20 6796301 3
755701046 270269710 868995043 455252803 552995120 216589347 308374356 319755458 864407120 307671952 789522118 298742001 651722816 85320615 852551233 566366054 382681520 148349604 76710427 157542884
288645171 188985163 521346241 228598149 139235477 102432443 141050980 98824375 6650...

output:

6738104379
7984192524
6682643982
8551242334
9875609213
9019962954
7205803780
7820948160
9790879717
9459146304
9934532300
8405432040
9944575540
10039079037
8132669988
7538929866
8956534221
9900173865
10454166810
11403597671
9271582385
8293875636
9413770509
10870598813
7757327982
7862659764
1078741223...

result:

ok 10000 lines

Test #30:

score: 15
Accepted
time: 22ms
memory: 40676kb

input:

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

output:

112
78
36
34
19
50
84
88
19
36
98
0
56
75
0
36
77
48
54
18
64
38
72
90
65
49
60
96
77
80
42
48
52
48
20
0
48
49
72
56
52
64
0
66
0
36
90
46
81
72
56
32
48
58
0
28
56
84
51
0
40
34
40
52
72
77
72
52
16
44
60
0
18
57
36
18
78
91
65
32
45
13
60
32
30
52
60
68
70
66
38
104
20
85
0
15
54
40
28
0
56
54
40...

result:

ok 20000 lines

Subtask #7:

score: 10
Accepted

Dependency #6:

100%
Accepted

Test #31:

score: 10
Accepted
time: 7ms
memory: 41144kb

input:

201
10 20 2
23109525 6676084 9243810 24136615 10270900 2567725 4621905 9757355 14379260 8216719
17460530 0 0 8216720 2054180 1540635 1027090 7189630 13865715 1540635
10 18 2
9467685 12623580 2524716 22722444 2524716 18304191 11992401 15779474 19566549 23353622
8836506 3155895 2524716 631179 0 631179...

output:

77545280
99726268
157279422
96228240
215210722
78400808
164201580
8352022
15980968
180557844
25127678
164747520
191782536
148699960
64122234
5534301
60653126
307987770
13660994
157212651
55968514
120973846
99564294
84986478
70624418
69421376
144626860
25232990
11433744
117459816
207764786
9548510
16...

result:

ok 201 lines

Test #32:

score: 10
Accepted
time: 71ms
memory: 51108kb

input:

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

output:

359288
399748
399940
358746
399096
390879
358514
399044
390396
359730

result:

ok 10 lines

Test #33:

score: 10
Accepted
time: 444ms
memory: 141036kb

input:

1
1000000 514340876 7
795245439 650075960 435715823 840206363 388197923 996126461 446244962 286227265 656509427 463441679 899492335 166901698 826758383 773684857 571102368 929861528 539053049 175795382 294360645 686212049 696711243 461268396 662126986 903290491 694039806 307379359 207285558 67292588...

output:

437836689106761

result:

ok single line: '437836689106761'

Test #34:

score: 10
Accepted
time: 239ms
memory: 125320kb

input:

1
1000000 577026094 15
23907 22435 48930 87611 24385 86358 7112 3906 69219 27301 10984 52149 97804 97157 65615 70640 76368 68062 59758 98553 50531 52275 56992 52745 89045 87978 83677 46662 13049 66495 39841 62110 67635 68844 81623 29525 90532 6515 77645 79103 27592 73817 59148 4120 99026 10382 39341...

output:

46375358295

result:

ok single line: '46375358295'

Subtask #8:

score: 15
Accepted

Dependency #6:

100%
Accepted

Test #35:

score: 15
Accepted
time: 24ms
memory: 42976kb

input:

20000
10 151 45
253 3960 654 4062 4904 3777 2556 4932 902 49
207 2430 505 3524 970 1134 1387 3976 92 49
10 864 78
3823 2125 1009 3123 4305 4827 5723 4585 78 4078
9 684 996 133 659 1656 1724 3907 78 22
10 29 46
2039 3959 156 5033 4527 1478 5049 34 75 188
1823 3215 20 1551 1806 341 3741 34 75 4
10 119...

output:

25335
32448
22034
17088
24024
28152
26600
27734
25433
26460
14508
24180
25137
26550
28077
14224
24300
27066
32465
25146
46056
57024
42366
51379
70547
57800
65281
49200
72534
41850
55754
49440
21816
48550
61264
43264
45178
69158
39480
56088
39098
53100
58188
45933
52650
36288
35530
52052
50511
54815
...

result:

ok 20000 lines

Test #36:

score: 15
Accepted
time: 76ms
memory: 69116kb

input:

1
200000 404083085 35552315
46344505 529371185 409786544 351931390 182601215 373772288 149232053 362339023 789634565 891849451 389192040 794353411 500952551 803649024 291922978 515994756 362695878 167394967 155334508 481175182 365083801 929210442 258539495 22934569 2495994 266609592 567544892 356697...

output:

96429788305525

result:

ok single line: '96429788305525'

Test #37:

score: 15
Accepted
time: 58ms
memory: 69640kb

input:

1
200000 944027169 702950
4161226 8195573 5937765 7215331 9361088 244238 2651131 7255203 9764899 3692096 1868990 4798311 2786170 6990000 9297989 3607918 7567580 6139350 1604385 5414197 6572788 278140 6479487 4888675 7151784 5953956 5447913 3929002 5996918 2750455 8780049 7481304 4679480 2686053 9508...

output:

998261003076

result:

ok single line: '998261003076'

Test #38:

score: 15
Accepted
time: 30ms
memory: 40900kb

input:

2000
10 13 4
85 5 80 30 35 45 55 89 100 97
20 5 70 5 15 5 20 5 20 30
10 14 3
39 60 35 3 85 5 15 30 18 35
0 25 20 0 70 5 5 5 0 20
10 2 2
4 75 10 55 45 95 10 30 70 25
0 60 5 5 35 20 0 30 20 25
10 20 4
95 45 100 70 60 65 10 70 20 54
60 30 85 5 25 5 5 25 10 10
10 15 2
4 5 95 95 30 10 40 44 14 30
0 5 35 ...

output:

500
237
278
464
238
300
490
194
456
308
376
440
513
385
330
590
500
405
380
393
44392514672
45103226922
48438945126
40588153581
42746880071
41573735832
41906269952
43664993808
41875450050
44761351167
40968094648
46143942320
42441202922
49608391781
39619875750
44325610512
44961797225
42034985142
4026...

result:

ok 2000 lines

Test #39:

score: 15
Accepted
time: 25ms
memory: 42980kb

input:

20000
10 22 5
9 18 4 7 28 3 2 6 12 30
3 6 2 1 16 1 2 5 3 29
10 22 5
15 2 2 14 16 12 28 26 17 16
10 1 1 11 13 3 2 4 17 8
10 30 3068
21 13 14 21 27 26 11 13 5 4
2 4 10 7 15 25 1 1 3 3
10 18 2
6 28 10 9 23 11 24 27 3 11
4 28 3 9 16 7 9 10 3 6
10 5 2
5 20 21 19 24 8 1 5 10 17
3 10 9 16 1 1 1 1 7 4
10 12...

output:

84
107
125
91
91
117
12037965
90
86
114490710
85
104
104
165
125
136
34121191
131
145
104596305
114
182209234
143
104
113840116
111
149
121772710
93
73
71056575
150356426
97
7109954
45171004
125031432
102
103
88
130
93
79
170
190
169
126
121
163
86
137
65087317
132
120
169
106552593
49486921
192
115...

result:

ok 20000 lines

Subtask #9:

score: 15
Accepted

Dependency #2:

100%
Accepted

Dependency #5:

100%
Accepted

Dependency #7:

100%
Accepted

Dependency #8:

100%
Accepted

Test #40:

score: 15
Accepted
time: 82ms
memory: 69348kb

input:

1
200000 972874454 9602
9846345 4022642 5544920 4967079 3835286 2310820 6355053 6739380 6444902 115406 4955096 2355352 6345920 4037216 7199319 9357371 3969228 8767303 7973524 7653572 3287035 8973724 8974791 7059751 1639989 5762404 3452123 4459184 3428264 1973698 1440037 6385626 3318279 6007936 66137...

output:

998843738470

result:

ok single line: '998843738470'

Test #41:

score: 15
Accepted
time: 533ms
memory: 148560kb

input:

1
1000000 46063517 25659057
390104291 166954139 198147202 139267700 763445836 975938335 312022879 419444567 730245910 336445840 707462436 27020008 567455852 769088625 239889325 47430746 234381131 705903204 9828736 947963553 118592653 480586692 539065316 802122079 119701258 153943864 841339485 560042...

output:

500240883097693

result:

ok single line: '500240883097693'

Test #42:

score: 15
Accepted
time: 161ms
memory: 121496kb

input:

1
1000000 8912 78042320
14621273 1560990 20709134 24975840 40949971 17847319 28305952 23466883 38140189 48338657 19980672 44800413 4162640 43967885 3850442 26380731 27941721 25079906 40013377 25964467 39441014 39180849 51460637 16910725 1925221 39128816 9157808 7492752 28514084 48858987 39857278 143...

output:

26042648290677

result:

ok single line: '26042648290677'

Extra Test:

score: 0
Extra Test Passed