编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#28332 #1152. 连连看 Runtime Error 75 614 ms 3384 K C++ 11 / 1.5 K nocriz🦆 2020-06-30 22:06:04
显示原始代码
#include <bits/stdc++.h>
#define ll long long
#define mp make_pair
#define pb push_back
#define pii pair<int, int>
#define fi first
#define se second
#define ri register int
#define rep(i, a, b) for (ri i = (a); i <= (b); ++i)
using namespace std;
inline int read() {
    ri x = 0, f = 1;
    char c = getchar();
    while (c < '0' || c > '9') {
        if (c == '-')
            f = -1;
        c = getchar();
    }
    while (c >= '0' && c <= '9') x = (x << 1) + (x << 3) + (c ^ '0'), c = getchar();
    return x * f;
}
const int N = 1e6 + 5;
int n, a[N], b[N];
pii x[N], y[N];
ll xl, xr, xL, xR, yl, yr, yL, yR, ans;
vector<int> v[4];
int main() {
    n = read();
    rep(i, 1, n) {
        ri xx = read(), yy = read();
        x[i] = mp(xx + yy, i);
        y[i] = mp(xx - yy, i);
    }
    sort(x + 1, x + n + 1);
    sort(y + 1, y + n + 1);
    rep(i, 1, n) a[x[i].se] = i, b[y[i].se] = i;
    if (n & 1) {
        n >>= 1;
        ri p;
        rep(i, 1, n + 1) xl += x[i].fi, yl += y[i].fi;
        rep(i, n + 1, n << 1 | 1) xr += x[i].fi, yr += y[i].fi;
        rep(i, 1, n << 1 | 1) {
            if (a[i] <= n)
                xL = xl - x[a[i]].fi, xR = xr - x[n + 1].fi;
            else
                xL = xl - x[n + 1].fi, xR = xr - x[a[i]].fi;
            if (b[i] <= n)
                yL = yl - y[b[i]].fi, yR = yr - y[n + 1].fi;
            else
                yL = yl - y[n + 1].fi, yR = yr - y[b[i]].fi;
            if (xR + yR - xL - yL >= ans)
                p = i, ans = xR + yR - xL - yL;
        }
        n <<= 1;
        rep(i, a[p], n) x[i] = x[i + 1];
        rep(i, b[p], n) y[i] = y[i + 1];
        rep(i, 1, n) a[x[i].fi] = i, b[y[i].fi] = i;
    }
    n >>= 1;
    rep(i, 1, n) if (b[x[i].se] <= n) v[0].pb(x[i].se);
    else v[1].pb(x[i].se);
    rep(i, n + 1, n << 1) if (b[x[i].se] <= n) v[2].pb(x[i].se);
    else v[3].pb(x[i].se);
    printf("%d\n", n);
    ri sz = v[0].size() - 1;
    rep(i, 0, sz) printf("%d %d\n", v[0][i], v[3][i]);
    sz = v[1].size() - 1;
    rep(i, 0, sz) printf("%d %d\n", v[1][i], v[2][i]);
    return 0;
}
子任务 #1
Runtime Error
得分:75
测试点 #1
Accepted
得分:100
用时:38 ms
内存:3260 KiB

输入文件(input1.in

99994
39904 35083
46820 36679
18613 3814
6474 19631
37764 36525
18319 33414
45300 26489
21133 11529

<1155515 bytes omitted>

答案文件(input1.out

1665399942

用户输出

49997
24609 27796
10263 59892
45435 13843
77940 32646
72660 13832
88743 32540
665 51135
55100 6965
12798 23021
48629 26156
33042
<588736 bytes omitted>

系统信息

Exited with return code 0
测试点 #2
Accepted
得分:100
用时:27 ms
内存:3272 KiB

输入文件(input2.in

99966
29572 24605
33552 8402
18093 9640
547 31444
251 3309
43619 22874
32618 14747
3018 19766
37882 
<1155228 bytes omitted>

答案文件(input2.out

1664919648

用户输出

49983
82478 60171
62451 63321
40241 78472
44908 1206
98072 28818
72834 82372
17966 61274
79618 25379
85633 69525
75675 15745
351
<588568 bytes omitted>

系统信息

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

输入文件(input3.in

99959
24963 15592
20533 22230
22960 10397
32438 32270
16368 45627
25843 147
28835 6570
37998 16798
1
<1155287 bytes omitted>

答案文件(input3.out

1661963157

用户输出

49979
87245 67467
73562 94327
86106 83875
43317 63532
49309 4977
62891 10822
62882 11208
61769 738
23881 60061
73230 77493
15680
<534366 bytes omitted>

系统信息

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

输入文件(input4.in

99950
2417 45567
19300 44813
23263 44027
33863 2702
39461 4555
42612 32590
15374 27421
31106 10493
4
<1155004 bytes omitted>

答案文件(input4.out

1662916373

用户输出

49975
83305 40149
60794 78018
92164 7064
63627 67266
91744 91301
71223 65810
35430 16536
66451 37490
52426 94287
20419 50384
553
<588472 bytes omitted>

系统信息

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

输入文件(input5.in

99972
45280 44508
29577 24171
8151 8714
7100 44734
49861 28412
31199 14196
17156 34102
32122 48695
4
<1155310 bytes omitted>

答案文件(input5.out

1664148272

用户输出

49986
10557 61296
33291 66534
77243 83816
68613 21354
10660 52170
84933 53713
41205 67466
66778 30854
64098 81635
76924 97441
72
<588604 bytes omitted>

系统信息

Exited with return code 0
测试点 #6
Accepted
得分:100
用时:31 ms
内存:3260 KiB

输入文件(input7.in

99994
22203 12731
48860 13276
9330 45678
45445 29249
15122 11965
11386 19038
21223 30977
15157 31632
<1155538 bytes omitted>

答案文件(input7.out

1665321412

用户输出

49997
17982 14456
50513 32816
80209 81373
96722 43081
4394 35880
41 71409
96351 94164
39246 40196
21574 42572
9306 47258
76198 2
<588736 bytes omitted>

系统信息

Exited with return code 0
测试点 #7
Accepted
得分:100
用时:35 ms
内存:3260 KiB

输入文件(input8.in

99994
8 4
10 6
4 4
6 9
7 5
9 5
10 8
8 3
2 7
2 10
10 2
2 10
9 9
6 7
5 4
8 4
3 10
10 8
7 5
8 5
10 8
8 
<419780 bytes omitted>

答案文件(input8.out

330146

用户输出

49997
61 50138
86 50139
143 50155
290 50176
306 50177
823 50179
880 50184
882 50193
912 50216
957 50260
1134 50276
1209 50320
12
<588736 bytes omitted>

系统信息

Exited with return code 0
测试点 #8
Accepted
得分:100
用时:30 ms
内存:3364 KiB

输入文件(input9.in

99969
4 8
8 6
2 6
9 10
4 10
10 4
1 5
9 9
3 9
9 2
7 3
1 10
10 9
9 3
8 4
9 6
10 5
3 7
9 4
6 6
3 10
10 
<419576 bytes omitted>

答案文件(input9.out

329492

用户输出

49984
75 48837
175 48917
186 48927
209 48929
417 48935
844 48943
879 48999
911 49043
1006 49074
1250 49108
1288 49118
1432 49122
<588552 bytes omitted>

系统信息

Exited with return code 0
测试点 #9
Accepted
得分:100
用时:28 ms
内存:3200 KiB

输入文件(input10.in

99987
5 10
6 10
7 6
10 4
2 10
10 5
10 5
2 8
9 4
1 9
4 9
8 4
9 7
5 7
6 4
7 8
5 6
1 5
5 7
5 6
4 8
9 3

<419631 bytes omitted>

答案文件(input10.out

329440

用户输出

49993
33 50038
148 50049
319 50057
376 50068
403 50073
459 50083
466 50140
537 50153
770 50164
814 50177
851 50179
1000 50185
10
<588672 bytes omitted>

系统信息

Exited with return code 0
测试点 #10
Accepted
得分:100
用时:27 ms
内存:3332 KiB

输入文件(input11.in

99987
8 8
6 10
9 8
6 7
7 4
3 8
1 7
5 8
5 7
8 8
9 3
1 5
3 10
10 8
1 5
3 7
10 4
9 2
4 1
7 6
2 1
1 10
4
<419934 bytes omitted>

答案文件(input11.out

330047

用户输出

49993
254 52412
291 52417
423 52419
495 52460
565 52463
700 52478
704 52511
828 52516
847 52523
870 52548
1023 52577
1267 52601

<588656 bytes omitted>

系统信息

Exited with return code 0
测试点 #11
Accepted
得分:100
用时:32 ms
内存:3276 KiB

输入文件(input12.in

99991
1 9
6 6
8 9
8 9
10 10
3 7
8 10
4 5
3 6
6 10
3 8
7 7
1 6
7 1
9 2
3 1
6 7
7 10
5 4
7 3
8 9
3 3
1
<419968 bytes omitted>

答案文件(input12.out

330232

用户输出

49995
35 49878
104 49923
136 49930
224 49939
441 49985
634 49986
668 50004
747 50019
790 50037
802 50092
946 50095
1053 50099
12
<588676 bytes omitted>

系统信息

Exited with return code 0
测试点 #12
Accepted
得分:100
用时:28 ms
内存:3204 KiB

输入文件(input13.in

99981
2 5
7 10
9 9
9 8
3 10
10 1
5 4
9 10
7 7
9 2
3 3
5 8
10 9
6 10
3 4
1 6
2 1
8 7
9 1
2 9
1 1
3 10
<419894 bytes omitted>

答案文件(input13.out

329860

用户输出

49990
21 48889
309 48894
337 48903
343 48939
446 48942
514 48943
537 48972
581 48974
750 49000
814 49018
959 49028
1121 49073
11
<588645 bytes omitted>

系统信息

Exited with return code 0
测试点 #13
Accepted
得分:100
用时:35 ms
内存:3200 KiB

输入文件(input14.in

99970
2 6
8 5
4 5
4 7
6 9
1 8
2 7
6 6
3 8
1 3
5 5
10 8
10 2
3 9
4 4
2 6
1 9
9 8
7 8
1 7
5 6
6 5
10 3
<419547 bytes omitted>

答案文件(input14.out

329442

用户输出

49985
289 48998
290 49005
330 49008
334 49011
357 49044
372 49049
437 49055
549 49064
583 49065
751 49085
987 49099
993 49106
10
<588592 bytes omitted>

系统信息

Exited with return code 0
测试点 #14
Runtime Error
得分:0
用时:26 ms
内存:2684 KiB

输入文件(input15.in

99951
43016666 705054189
23890816 191954409
48367680 178083192
65698935 509772667
809449080 63876393
<1972731 bytes omitted>

答案文件(input15.out

33839316800310

系统信息

Killed: Segmentation fault
测试点 #15
Accepted
得分:100
用时:33 ms
内存:3260 KiB

输入文件(input16.in

99950
390196982 16217026
756299460 557589375
845307426 215064985
403301484 72900781
989173256 503715
<1973044 bytes omitted>

答案文件(input16.out

33893190316304

用户输出

49975
2088 89492
63086 79102
33479 90931
10981 43456
84332 32307
69694 80534
67684 88745
70069 96874
39142 1927
79551 38576
3778
<588472 bytes omitted>

系统信息

Exited with return code 0
测试点 #16
Accepted
得分:100
用时:31 ms
内存:3352 KiB

输入文件(input17.in

99966
309713742 103345138
912956589 605640153
759597371 959523157
958180894 12282372
124979541 33724
<1973228 bytes omitted>

答案文件(input17.out

33869086670134

用户输出

49983
91668 57160
26180 15859
30424 30920
8704 59399
29486 34305
31305 93652
52894 95892
91627 37697
56153 85541
28256 30874
201
<588568 bytes omitted>

系统信息

Exited with return code 0
测试点 #17
Runtime Error
得分:0
用时:26 ms
内存:2756 KiB

输入文件(input18.in

99989
662308788 188157881
945161135 936031796
224331765 646572957
176241418 73020933
141324820 14925
<1973587 bytes omitted>

答案文件(input18.out

33895043667584

系统信息

Killed: Segmentation fault
测试点 #18
Runtime Error
得分:0
用时:26 ms
内存:2764 KiB

输入文件(input19.in

99973
154453232 656240272
715155228 848233937
852480696 275617197
561544202 123073069
472873249 7570
<1973611 bytes omitted>

答案文件(input19.out

33855972714822

系统信息

Killed: Segmentation fault
测试点 #19
Runtime Error
得分:0
用时:31 ms
内存:2780 KiB

输入文件(input20.in

99963
330145838 658516321
110794903 347274671
457221490 32851628
825966653 737106317
215914215 91143
<1973595 bytes omitted>

答案文件(input20.out

33750931421773

系统信息

Killed: Segmentation fault
测试点 #20
Runtime Error
得分:0
用时:24 ms
内存:2812 KiB

输入文件(input21.in

99955
645861926 798882887
204604371 64809073
832321434 183260368
540647278 28314156
852540009 437805
<1973031 bytes omitted>

答案文件(input21.out

33814666330789

系统信息

Killed: Segmentation fault