编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#5120 #1033. 电子钱包 Memory Limit Exceeded 10 4448 ms 271032 K C++ 17 / 2.3 K TosakaUCW 2024-02-25 15:51:56
显示原始代码
#include <bits/stdc++.h>
#define int long long

#define pb push_back

#define fi first

#define se second

using std::cin, std::cout, std::string;
int read(int x = 0, int f = 0, char ch = getchar()) {
    while (ch < 48 or 57 < ch) f = ch == 45, ch = getchar();
    while (48 <= ch and ch <= 57) x = x * 10 + ch - 48, ch = getchar();
    return f ? -x : x;
}
const int M = 1e5 + 5;
const int N = 10 + 5;
int n, m, k, a[N][M];

struct Segment_Tree {
#define ls (p << 1)

#define rs (p << 1 | 1)

#define mid ((l + r) >> 1)

#define mkp make_pair

    std::pair<int, int> max[M << 2];
    void push_up(int p) { max[p] = max[ls].fi > max[rs].fi ? max[ls] : max[rs]; }
    void build(int p, int i, int l, int r) {
        if (l == r)
            return max[p] = { a[i][l], l }, void();
        build(ls, i, l, mid), build(rs, i, mid + 1, r);
        push_up(p);
    }
    void modify(int p, int l, int r, int x) {
        if (l == r)
            return max[p] = { 0, x }, void();
        if (x <= mid)
            modify(ls, l, mid, x);
        else
            modify(rs, mid + 1, r, x);
        push_up(p);
    }
    auto query(int p, int l, int r, int x, int y) {
        if (x <= l and r <= y)
            return max[p];
        std::pair<int, int> res = { 0, 0 };
        if (x <= mid) {
            auto tmp = query(ls, l, mid, x, y);
            if (tmp.fi >= res.fi)
                res = tmp;
        }
        if (mid < y) {
            auto tmp = query(rs, mid + 1, r, x, y);
            if (tmp.fi >= res.fi)
                res = tmp;
        }
        return res;
    }
} T[N];

void solve() {
    n = read(), m = read(), k = read();
    for (int i = 1; i <= n; i++)
        for (int j = 1; j <= m; j++) a[i][j] = read();

    for (int i = 1; i <= n; i++) T[i].build(1, i, 1, n);
    int ans = 0;
    for (int j = 1; j + k - 1 <= m; j++) {
        int idx = 1;
        std::pair<int, int> res = { 0, 0 };
        for (int i = 1; i <= n; i++) {
            auto tmp = T[i].query(1, 1, n, j, j + k - 1);
            if (tmp.fi >= res.fi)
                res = tmp, idx = i;
        }
        ans += res.fi, T[idx].modify(1, 1, n, res.se);
    }
    cout << ans;
}

signed main() {
#ifndef ONLINE_JUDGE
    freopen("D.in", "r", stdin);
#endif
    for (int T = 1; T--; solve())
        ;
    return 0;
}
子任务 #1
Memory Limit Exceeded
得分:10
测试点 #1
Memory Limit Exceeded
得分:0
用时:211 ms
内存:262992 KiB

输入文件(1.in

3 5 1
-2 -1 1 -5 5
-10 6 -9 2 -3
3 18 -4 15 8

答案文件(1.out

45
测试点 #2
Wrong Answer
得分:0
用时:6 ms
内存:280 KiB

输入文件(2.in

2 4 2
8 10 1 18
0 18 19 4

答案文件(2.out

55

用户输出

28

Special Judge 信息

Files user_out and answer differ

系统信息

Exited with return code 0
测试点 #3
Accepted
得分:100
用时:4 ms
内存:428 KiB

输入文件(3.in

4 2 2
7 13
20 -10
12 3
-1 -1

答案文件(3.out

20

用户输出

20

系统信息

Exited with return code 0
测试点 #4
Wrong Answer
得分:0
用时:5 ms
内存:356 KiB

输入文件(4.in

5 5 3
826018350 77963601 542836249 494007192 621079892
339932393 365261088 341892848 167738021 989
<160 bytes omitted>

答案文件(4.out

2567369718

用户输出

2565456292

Special Judge 信息

Files user_out and answer differ

系统信息

Exited with return code 0
测试点 #5
Accepted
得分:100
用时:4 ms
内存:360 KiB

输入文件(5.in

5 2 2
363463500 698098024
78546565 146763659
618817 532703722
689924184 208284721
130754951 842
<8 bytes omitted>

答案文件(5.out

842390266

用户输出

842390266

系统信息

Exited with return code 0
测试点 #6
Wrong Answer
得分:0
用时:4 ms
内存:392 KiB

输入文件(6.in

5 5 4
315095729 849945216 941621294 681161505 413055707
187320319 658718870 162242863 513206677 55
<160 bytes omitted>

答案文件(6.out

1850556110

用户输出

1791566510

Special Judge 信息

Files user_out and answer differ

系统信息

Exited with return code 0
测试点 #7
Memory Limit Exceeded
得分:0
用时:213 ms
内存:263168 KiB

输入文件(7.in

8 960 1
439522032 143659183 704614095 858726745 834941321 705143579 174376856 214547472 66507029 15
<75818 bytes omitted>

答案文件(7.out

853670661390
测试点 #8
Memory Limit Exceeded
得分:0
用时:217 ms
内存:263132 KiB

输入文件(8.in

8 964 4
882229056 985391405 426944910 497713492 702025464 240938286 233023176 161580397 109394271 5
<76203 bytes omitted>

答案文件(8.out

901553927440
测试点 #9
Memory Limit Exceeded
得分:0
用时:321 ms
内存:263244 KiB

输入文件(9.in

9 1000 7
778888049 221031413 866094670 467903517 788959338 303167339 456245818 516821715 412045756 
<88868 bytes omitted>

答案文件(9.out

939250128508
测试点 #10
Memory Limit Exceeded
得分:0
用时:213 ms
内存:263152 KiB

输入文件(10.in

10 984 10
823698119 556835313 592881930 37651090 646871595 883418970 65325689 169924809 372953135 8
<97260 bytes omitted>

答案文件(10.out

926224744381
测试点 #11
Memory Limit Exceeded
得分:0
用时:187 ms
内存:263256 KiB

输入文件(11.in

9 970 5
256243760 649457260 237057804 190581169 229207641 925377945 957412615 966448209 51993027 94
<86247 bytes omitted>

答案文件(11.out

908866174114
测试点 #12
Memory Limit Exceeded
得分:0
用时:446 ms
内存:263168 KiB

输入文件(12.in

9 972 4
878959650 27217025 186275748 62587960 695097047 440398304 836223866 366283930 397510761 462
<86452 bytes omitted>

答案文件(12.out

913833501668
测试点 #13
Memory Limit Exceeded
得分:0
用时:225 ms
内存:270068 KiB

输入文件(13.in

9 99977 1
989698183 785489651 792844089 617789529 834645745 729795279 302672369 831519843 266741809
<8898340 bytes omitted>

答案文件(13.out

90005770557915
测试点 #14
Memory Limit Exceeded
得分:0
用时:252 ms
内存:269340 KiB

输入文件(14.in

8 99921 1
57360719 348323751 822040646 334737121 980871704 732125987 649339956 128380089 943126568 
<7904838 bytes omitted>

答案文件(14.out

88797397671136
测试点 #15
Memory Limit Exceeded
得分:0
用时:266 ms
内存:269296 KiB

输入文件(15.in

8 99993 6
570271940 230862916 -44126637 -306643413 -559442167 971759845 -56279740 -785744455 147223
<8310648 bytes omitted>

答案文件(15.out

87090759500755
测试点 #16
Memory Limit Exceeded
得分:0
用时:255 ms
内存:270968 KiB

输入文件(16.in

10 99804 3
775758376 -53853367 721775156 771914116 816690640 -68382925 -125716285 -690701924 563611
<10367676 bytes omitted>

答案文件(16.out

88590134135670
测试点 #17
Memory Limit Exceeded
得分:0
用时:280 ms
内存:270080 KiB

输入文件(17.in

9 99878 8
-935097118 -415339545 991690508 -798189312 213125172 -273867542 -242633820 -951795287 738
<9338412 bytes omitted>

答案文件(17.out

88594394748770
测试点 #18
Memory Limit Exceeded
得分:0
用时:559 ms
内存:270880 KiB

输入文件(18.in

10 99968 7
831110579 -51028942 -610367370 122313557 697677017 -351824431 -253519158 -981392158 4407
<10384563 bytes omitted>

答案文件(18.out

89770380601118
测试点 #19
Memory Limit Exceeded
得分:0
用时:498 ms
内存:269396 KiB

输入文件(19.in

8 99892 6
743351373 354455633 -381921520 164692660 -52467231 443771200 -658716573 -323953488 473650
<8302011 bytes omitted>

答案文件(19.out

87063038029784
测试点 #20
Memory Limit Exceeded
得分:0
用时:282 ms
内存:271032 KiB

输入文件(20.in

10 99959 5
328521328 -413386249 -180663692 -327435995 51903610 403437984 391694250 -34324363 -69569
<10385015 bytes omitted>

答案文件(20.out

89458913213599