QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#457361#5521. Excellent XOR ProblemWTR2007AC ✓20ms5856kbC++201.8kb2024-06-29 10:57:392024-06-29 10:57:39

Judging History

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

  • [2024-06-29 10:57:39]
  • 评测
  • 测评结果:AC
  • 用时:20ms
  • 内存:5856kb
  • [2024-06-29 10:57:39]
  • 提交

answer

#include<bits/stdc++.h>
#define fi first
#define se second
#define MULT_TEST 1
using namespace std;
typedef long double ldb;
typedef unsigned long long ull;
const int INF = 0x3f3f3f3f;
const int MOD = 998244353;
inline int read() {
    int w = 0, f = 1;
    char ch = getchar();
    while (ch < '0' || ch > '9') {
        if (ch == '-') f = -1;
        ch = getchar();
    }
    while (ch >= '0' && ch <= '9') {
        w = (w << 1) + (w << 3) + ch - 48;
        ch = getchar();
    }
    return w * f;
}
inline void Solve() {
    int n;
    n = read();
    vector<int> a(n + 1), sum(n + 1);
    for (int i = 1; i <= n; i++) a[i] = read();
    for (int i = 1; i <= n; i++) sum[i] = sum[i - 1] ^ a[i];
    vector<int> T;
    for (int i = 1; i <= n; i++) 
        if (sum[i]) T.push_back(sum[i]);
    sort(T.begin(), T.end());
    T.erase(unique(T.begin(), T.end()), T.end());
    if (sum[n] == 0 && T.size() <= 1) printf("NO\n"); 
    else {
        printf("YES\n");
        if (sum[n]) {
            printf("2\n");
            int A = T[0], pos = 1;
            for (int i = 1; i < n; i++) 
                if (sum[i] == A) pos = i;
            printf("%d %d\n", 1, pos);
            printf("%d %d\n", pos + 1, n);
        }
        else {
            printf("3\n");
            int A = T[0], B = T[1], l = 0, r = 0;
            for (int i = 1; i < n; i++) {
                if (sum[i] == A) l = i;
                if (sum[i] == B) r = i;
            }
            if (l > r) swap(l, r);
            printf("%d %d\n", 1, l);
            printf("%d %d\n", l + 1, r);
            printf("%d %d\n", r + 1, n);
        }
    }
}
signed main() {
    int _ = 1;
#if MULT_TEST
    _ = read();
#endif 
    while (_--) Solve();
    return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 3752kb

input:

4
2
0 0
3
1 2 3
5
16 8 4 2 1
6
42 42 42 42 42 42

output:

NO
YES
3
1 1
2 2
3 3
YES
2
1 1
2 5
NO

result:

ok Correct (4 test cases)

Test #2:

score: 0
Accepted
time: 7ms
memory: 5232kb

input:

1
200000
0 0 104990627 0 104990627 0 0 0 0 104990627 0 104990627 0 0 104990627 104990627 0 0 0 0 0 104990627 0 0 0 104990627 104990627 104990627 0 104990627 0 104990627 104990627 0 104990627 0 0 0 104990627 104990627 0 0 104990627 104990627 0 0 104990627 0 0 0 0 0 104990627 104990627 0 0 0 0 0 10499...

output:

YES
2
1 199999
200000 200000

result:

ok Correct (1 test case)

Test #3:

score: 0
Accepted
time: 15ms
memory: 5856kb

input:

1
200000
916550535 1039111536 183367143 845311658 473404911 844600350 249761080 860927112 268559756 661297994 448456545 184790162 804023458 655065019 442145717 130497524 509071033 644651807 1039510287 766490362 514960668 612238468 863513676 417538457 839195481 901404895 760875212 983171045 343221187...

output:

YES
3
1 95
96 21200
21201 200000

result:

ok Correct (1 test case)

Test #4:

score: 0
Accepted
time: 20ms
memory: 5656kb

input:

1
200000
697100980 63360185 3577101 75632048 903073319 644702701 1017474476 268785811 6091842 227390753 270800416 554896940 318364388 526066510 354510498 1034952286 613138496 176305121 384248064 715019967 999545181 91222841 1063728923 665773338 354670745 473570604 220064105 301115885 1038664738 3094...

output:

YES
2
1 84451
84452 200000

result:

ok Correct (1 test case)

Test #5:

score: 0
Accepted
time: 7ms
memory: 5296kb

input:

1
200000
446225258 446225258 446225258 446225258 0 0 446225258 446225258 0 446225258 0 0 446225258 0 446225258 0 446225258 446225258 446225258 0 446225258 0 0 446225258 0 0 446225258 446225258 446225258 446225258 0 0 0 446225258 0 446225258 446225258 0 0 0 0 446225258 446225258 446225258 446225258 0...

output:

YES
3
1 139152
139153 199999
200000 200000

result:

ok Correct (1 test case)

Test #6:

score: 0
Accepted
time: 7ms
memory: 5400kb

input:

1
200000
917884074 0 917884074 917884074 0 0 0 917884074 917884074 0 917884074 0 0 0 917884074 0 917884074 917884074 0 917884074 0 917884074 0 917884074 0 917884074 0 0 917884074 0 0 0 0 917884074 0 0 917884074 0 0 917884074 0 0 0 917884074 0 0 917884074 917884074 917884074 0 917884074 917884074 917...

output:

NO

result:

ok Correct (1 test case)

Test #7:

score: 0
Accepted
time: 19ms
memory: 5768kb

input:

1
200000
38752313 357331606 537948798 987818688 44594898 45009755 99389192 639845557 292429925 1073152680 811573855 591475451 1008870823 139070983 91604841 527091101 925340882 918748711 565945042 560608781 305815075 675659609 590632841 336736157 1048580186 263809556 745114432 402434054 977511741 738...

output:

YES
3
1 35909
35910 166360
166361 200000

result:

ok Correct (1 test case)

Test #8:

score: 0
Accepted
time: 19ms
memory: 5696kb

input:

1
200000
893044581 455322080 358158755 218139078 474263307 918853931 867102588 47704257 29962011 639245440 633917727 961582229 523211753 10072474 3969623 357804040 1029408344 450402025 984424643 509138385 790399588 154643982 790848088 584971038 564055450 909717089 204303325 794120719 599213467 16634...

output:

YES
2
1 133761
133762 200000

result:

ok Correct (1 test case)

Test #9:

score: 0
Accepted
time: 7ms
memory: 5296kb

input:

1
200000
0 185376886 185376886 0 0 185376886 0 0 0 185376886 185376886 185376886 0 185376886 0 185376886 0 0 0 185376886 0 185376886 0 0 185376886 0 0 185376886 185376886 0 0 0 0 185376886 185376886 185376886 185376886 0 185376886 185376886 185376886 0 185376886 185376886 185376886 0 185376886 18537...

output:

YES
3
1 66722
66723 199999
200000 200000

result:

ok Correct (1 test case)

Test #10:

score: 0
Accepted
time: 7ms
memory: 5316kb

input:

1
200000
657035701 657035701 657035701 0 657035701 0 0 0 657035701 0 0 657035701 0 657035701 657035701 657035701 657035701 657035701 0 0 657035701 0 0 657035701 657035701 657035701 657035701 0 657035701 0 0 0 657035701 657035701 657035701 657035701 657035701 657035701 657035701 657035701 657035701 0...

output:

YES
2
1 199996
199997 200000

result:

ok Correct (1 test case)

Test #11:

score: 0
Accepted
time: 19ms
memory: 5856kb

input:

1
200000
858422083 738133618 507317400 938167375 459497018 1044660423 463406796 381197927 222652382 320503882 227297869 94859048 1041849577 22395538 867727705 113746555 121033531 998839546 547321231 944047181 838316629 703306016 929065075 831702287 292242396 594475369 700537839 114951735 741004316 3...

output:

YES
2
1 82772
82773 200000

result:

ok Correct (1 test case)

Test #12:

score: 0
Accepted
time: 7ms
memory: 5340kb

input:

1
200000
0 0 0 0 159868366 0 0 0 0 159868366 0 159868366 159868366 0 159868366 159868366 0 0 0 0 0 159868366 0 159868366 159868366 0 159868366 0 0 159868366 0 159868366 0 0 0 0 159868366 0 0 159868366 0 159868366 0 0 159868366 159868366 0 0 0 159868366 0 159868366 0 159868366 0 159868366 159868366 0...

output:

YES
2
1 199999
200000 200000

result:

ok Correct (1 test case)

Test #13:

score: 0
Accepted
time: 4ms
memory: 5344kb

input:

1
200000
0 0 0 631527185 0 0 0 0 631527185 0 0 0 0 631527185 0 631527185 0 0 0 0 631527185 0 631527185 631527185 0 0 0 631527185 0 631527185 631527185 631527185 0 0 0 631527185 0 631527185 0 631527185 631527185 0 0 0 631527185 631527185 0 631527185 0 631527185 0 0 631527185 631527185 631527185 0 0 0...

output:

YES
2
1 199999
200000 200000

result:

ok Correct (1 test case)

Test #14:

score: 0
Accepted
time: 15ms
memory: 5720kb

input:

1
200000
200073416 1032105039 1041689097 776612191 674760420 444967477 619063336 752257673 508990464 92523985 768071308 131437559 658614189 709141835 604822048 679627194 433235918 667541312 729018209 789635995 144586522 214000960 455968993 502665106 986151837 384714321 151846341 216269904 679851319 ...

output:

YES
2
1 153483
153484 200000

result:

ok Correct (1 test case)

Test #15:

score: 0
Accepted
time: 19ms
memory: 5840kb

input:

1
200000
1054365685 56353689 861899055 6932581 30687005 245069829 313034908 160116373 246522551 732358569 590415180 501544337 172955118 580143326 517186829 510340133 537303380 199194626 73755986 738165599 629171036 766727158 656184240 750899987 501627101 1030621854 684777058 607956568 301553045 1962...

output:

YES
2
1 52409
52410 200000

result:

ok Correct (1 test case)

Test #16:

score: 0
Accepted
time: 3ms
memory: 5332kb

input:

1
200000
972761816 972761816 0 0 0 0 0 972761816 0 972761816 972761816 0 972761816 0 972761816 0 0 972761816 0 972761816 972761816 972761816 0 0 972761816 972761816 972761816 0 972761816 972761816 0 0 972761816 0 972761816 0 972761816 972761816 972761816 972761816 0 972761816 0 0 0 972761816 0 97276...

output:

YES
2
1 199999
200000 200000

result:

ok Correct (1 test case)

Test #17:

score: 0
Accepted
time: 19ms
memory: 5752kb

input:

1
200000
615466573 252334636 502318970 615057008 890023823 919016355 774719876 49575596 795328547 938285912 235102923 168016069 275378801 322146308 341916391 171766010 745438304 336243078 910715187 635224808 524598239 798437728 1056614735 173627925 606319454 174953272 676896668 317588073 618698322 1...

output:

YES
3
1 46556
46557 46946
46947 200000

result:

ok Correct (1 test case)

Test #18:

score: 0
Accepted
time: 19ms
memory: 5856kb

input:

1
200000
396017018 350325110 322528928 919119221 245950407 719118707 468691448 531176119 532860634 504378671 57446795 538122848 863461554 193147799 254281172 2478948 849505767 941638216 255452964 583754413 1009182753 277422102 183088158 421862806 121794718 820860806 136085561 709274737 240400048 625...

output:

YES
3
1 159983
159984 191239
191240 200000

result:

ok Correct (1 test case)

Test #19:

score: 0
Accepted
time: 7ms
memory: 5364kb

input:

1
200000
240254620 240254620 0 0 0 0 240254620 240254620 0 240254620 240254620 240254620 240254620 240254620 240254620 240254620 0 240254620 240254620 0 0 240254620 240254620 240254620 0 0 240254620 240254620 0 240254620 0 0 0 240254620 0 240254620 0 240254620 0 0 240254620 0 240254620 240254620 240...

output:

YES
3
1 36111
36112 199999
200000 200000

result:

ok Correct (1 test case)

Test #20:

score: 0
Accepted
time: 7ms
memory: 5264kb

input:

1
200000
711913436 711913436 711913436 711913436 711913436 0 0 0 711913436 0 0 711913436 711913436 0 711913436 711913436 0 0 0 0 0 0 0 711913436 0 711913436 0 711913436 711913436 0 711913436 711913436 0 711913436 0 711913436 711913436 0 0 711913436 711913436 711913436 711913436 711913436 0 711913436...

output:

YES
2
1 199999
200000 200000

result:

ok Correct (1 test case)

Test #21:

score: 0
Accepted
time: 19ms
memory: 5672kb

input:

1
200000
556496957 599491909 1064758529 195572743 122274978 164089666 171295779 399095216 771461740 455276133 667723649 166819107 744520439 855408620 629777826 1051765207 261024403 511573799 743922497 652011161 800590597 531579900 170198475 603500551 485391878 1044502886 944661988 665346837 11913824...

output:

YES
2
1 93287
93288 200000

result:

ok Correct (1 test case)

Test #22:

score: 0
Accepted
time: 13ms
memory: 4640kb

input:

2
100000
834074965 802479352 920598314 872396637 780256286 163927241 263678492 397223877 6095204 156235661 1066538453 960385267 992353390 543334786 291831058 164061413 544994443 625732746 817631952 525924738 1066391946 961527978 978173652 1014843663 443127874 705524878 472068645 68137659 99653388 54...

output:

YES
3
1 69
70 19251
19252 100000
YES
2
1 99997
99998 100000

result:

ok Correct (2 test cases)

Test #23:

score: 0
Accepted
time: 7ms
memory: 4752kb

input:

2
100000
909567027 0 0 909567027 909567027 909567027 909567027 0 0 0 0 0 909567027 909567027 909567027 909567027 909567027 0 0 909567027 909567027 909567027 0 0 0 909567027 0 909567027 909567027 0 909567027 0 909567027 0 0 0 909567027 909567027 0 0 909567027 909567027 0 909567027 909567027 0 9095670...

output:

YES
3
1 1373
1374 99999
100000 100000
YES
2
1 99999
100000 100000

result:

ok Correct (2 test cases)

Test #24:

score: 0
Accepted
time: 13ms
memory: 4820kb

input:

2
100000
0 307484032 307484032 0 0 0 0 0 0 307484032 307484032 307484032 0 0 0 307484032 0 0 307484032 0 307484032 307484032 307484032 307484032 307484032 0 0 0 0 307484032 307484032 0 0 307484032 0 307484032 0 0 307484032 307484032 307484032 307484032 307484032 307484032 0 307484032 0 307484032 0 3...

output:

YES
2
1 99999
100000 100000
YES
3
1 9885
9886 33097
33098 100000

result:

ok Correct (2 test cases)

Test #25:

score: 0
Accepted
time: 7ms
memory: 4532kb

input:

2
100000
779142847 779142847 0 779142847 779142847 0 0 779142847 0 0 779142847 0 779142847 779142847 779142847 779142847 0 779142847 779142847 0 0 0 0 779142847 0 779142847 0 779142847 0 0 0 779142847 779142847 779142847 779142847 0 0 779142847 0 779142847 0 779142847 0 779142847 0 779142847 0 0 0 7...

output:

YES
2
1 99998
99999 100000
YES
2
1 99999
100000 100000

result:

ok Correct (2 test cases)

Test #26:

score: 0
Accepted
time: 11ms
memory: 4784kb

input:

2
100000
1030018566 120699423 201438145 1014903668 351446274 438078471 113306604 176142323 29965373 568090348 355913940 293328732 123458931 27340750 1015032006 560654991 961264292 899829650 344066707 320043156 857246353 1024949120 705292817 934041363 652512579 67929539 456307864 561142492 733943941 ...

output:

YES
3
1 44453
44454 99067
99068 100000
YES
3
1 3392
3393 88536
88537 100000

result:

ok Correct (2 test cases)

Test #27:

score: 0
Accepted
time: 7ms
memory: 4592kb

input:

2
100000
648718659 0 648718659 0 648718659 0 0 648718659 0 0 648718659 0 648718659 0 0 0 0 648718659 0 648718659 0 0 0 648718659 0 0 648718659 0 0 648718659 648718659 0 648718659 648718659 648718659 648718659 0 0 0 0 648718659 648718659 648718659 0 648718659 648718659 0 648718659 648718659 0 0 0 0 0...

output:

YES
3
1 12194
12195 99999
100000 100000
YES
3
1 86932
86933 99999
100000 100000

result:

ok Correct (2 test cases)

Test #28:

score: 0
Accepted
time: 3ms
memory: 4660kb

input:

2
100000
46635647 0 0 46635647 0 46635647 0 0 46635647 0 0 0 0 0 0 46635647 0 0 46635647 0 46635647 46635647 46635647 46635647 46635647 0 0 0 0 46635647 46635647 46635647 46635647 0 46635647 46635647 0 0 0 0 46635647 0 0 46635647 46635647 0 46635647 46635647 46635647 0 0 46635647 0 0 46635647 0 0 46...

output:

YES
3
1 4911
4912 99998
99999 100000
NO

result:

ok Correct (2 test cases)

Test #29:

score: 0
Accepted
time: 8ms
memory: 5008kb

input:

2
100000
0 518294466 0 0 518294466 0 0 0 0 518294466 518294466 518294466 518294466 518294466 0 0 0 0 518294466 0 518294466 518294466 0 0 0 518294466 0 0 518294466 518294466 0 0 0 0 0 0 0 0 518294466 518294466 0 518294466 518294466 518294466 0 518294466 0 0 518294466 0 0 0 518294466 0 518294466 51829...

output:

YES
2
1 99998
99999 100000
YES
2
1 35516
35517 100000

result:

ok Correct (2 test cases)

Test #30:

score: 0
Accepted
time: 13ms
memory: 4660kb

input:

2
100000
152220344 512661318 556019799 83668874 996378085 712229700 1036676540 1028802593 53835542 979945034 719031251 700014021 328306296 585088538 664491130 957248569 303792317 100184730 944243286 114161574 648100760 14628437 432411982 853239063 861897284 504076024 440547084 1054147326 294492670 2...

output:

YES
2
1 63702
63703 100000
YES
3
1 4054
4055 99997
99998 100000

result:

ok Correct (2 test cases)

Test #31:

score: 0
Accepted
time: 13ms
memory: 4880kb

input:

2
100000
0 0 256091592 256091592 256091592 256091592 256091592 256091592 0 256091592 256091592 0 256091592 256091592 256091592 256091592 0 256091592 256091592 0 0 0 0 256091592 0 256091592 256091592 0 0 0 256091592 256091592 256091592 256091592 256091592 256091592 0 0 256091592 256091592 256091592 2...

output:

YES
2
1 99996
99997 100000
YES
3
1 29491
29492 73801
73802 100000

result:

ok Correct (2 test cases)

Test #32:

score: 0
Accepted
time: 7ms
memory: 4084kb

input:

10
20000
0 0 0 611548380 0 0 611548380 611548380 0 0 0 0 0 0 0 0 611548380 0 611548380 611548380 0 611548380 611548380 611548380 611548380 0 0 611548380 0 611548380 0 0 611548380 611548380 611548380 611548380 0 611548380 0 611548380 0 0 0 611548380 611548380 0 611548380 0 0 0 611548380 0 0 611548380...

output:

NO
YES
2
1 19999
20000 20000
NO
YES
2
1 2585
2586 20000
YES
3
1 3651
3652 9823
9824 20000
YES
3
1 16854
16855 19447
19448 20000
YES
3
1 11470
11471 15513
15514 20000
NO
YES
2
1 19999
20000 20000
YES
2
1 19999
20000 20000

result:

ok Correct (10 test cases)

Test #33:

score: 0
Accepted
time: 9ms
memory: 3772kb

input:

100
2000
681949331 0 681949331 0 681949331 0 681949331 681949331 0 0 0 0 681949331 0 681949331 0 0 681949331 0 0 0 681949331 0 681949331 0 681949331 681949331 0 681949331 681949331 0 0 0 681949331 0 0 0 0 0 681949331 0 681949331 0 681949331 0 0 0 681949331 681949331 681949331 0 0 681949331 681949331...

output:

YES
3
1 1024
1025 1999
2000 2000
YES
2
1 1212
1213 2000
YES
2
1 1183
1184 2000
YES
2
1 1997
1998 2000
NO
YES
3
1 1057
1058 1999
2000 2000
YES
2
1 1996
1997 2000
YES
2
1 1999
2000 2000
YES
2
1 1999
2000 2000
YES
2
1 35
36 2000
YES
3
1 1231
1232 1999
2000 2000
YES
3
1 889
890 1999
2000 2000
YES
3
1 38...

result:

ok Correct (100 test cases)

Test #34:

score: 0
Accepted
time: 9ms
memory: 3740kb

input:

1000
200
0 857719523 857719523 0 0 0 0 857719523 857719523 857719523 857719523 857719523 857719523 857719523 857719523 857719523 0 857719523 857719523 857719523 0 0 0 857719523 0 0 0 0 857719523 0 857719523 0 857719523 857719523 857719523 0 857719523 857719523 0 857719523 857719523 0 857719523 0 857...

output:

NO
YES
2
1 148
149 200
YES
3
1 80
81 135
136 200
NO
YES
2
1 197
198 200
YES
3
1 97
98 101
102 200
YES
3
1 118
119 199
200 200
NO
YES
3
1 29
30 186
187 200
YES
3
1 76
77 199
200 200
YES
3
1 29
30 146
147 200
YES
2
1 146
147 200
YES
3
1 164
165 197
198 200
YES
2
1 196
197 200
YES
2
1 172
173 200
YES
3...

result:

ok Correct (1000 test cases)

Test #35:

score: 0
Accepted
time: 11ms
memory: 3748kb

input:

10000
20
543900313 552726730 947126694 840978907 254176888 60122111 901884666 505199489 688914573 1003996438 620599360 398547760 887489086 4512916 32391303 303536170 870861026 605856275 261632530 688416256
20
284854977 921584855 161086236 339543341 933767136 929406209 381540152 92180425 339023172 87...

output:

YES
2
1 2
3 20
YES
2
1 18
19 20
YES
2
1 2
3 20
NO
YES
3
1 9
10 13
14 20
YES
3
1 15
16 16
17 20
YES
2
1 4
5 20
YES
3
1 15
16 19
20 20
YES
3
1 15
16 18
19 20
YES
3
1 1
2 15
16 20
NO
YES
3
1 5
6 9
10 20
YES
2
1 2
3 20
YES
2
1 6
7 20
YES
3
1 5
6 19
20 20
NO
YES
2
1 19
20 20
NO
YES
2
1 5
6 20
YES
3
1 14
...

result:

ok Correct (10000 test cases)

Test #36:

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

input:

42
4761
0 406135131 0 0 406135131 0 0 0 406135131 0 406135131 0 406135131 406135131 406135131 406135131 406135131 406135131 406135131 406135131 0 0 406135131 406135131 406135131 0 0 406135131 0 0 406135131 406135131 0 0 0 0 0 0 0 0 0 0 406135131 406135131 0 0 0 0 0 0 0 406135131 0 0 406135131 0 0 0 ...

output:

YES
2
1 4760
4761 4761
YES
3
1 224
225 2811
2812 4761
NO
NO
NO
YES
3
1 834
835 1409
1410 4761
YES
3
1 234
235 1420
1421 4761
YES
3
1 857
858 4430
4431 4761
NO
YES
2
1 4760
4761 4761
YES
2
1 370
371 4761
YES
3
1 931
932 2499
2500 4761
YES
2
1 4760
4761 4761
YES
2
1 2096
2097 4761
YES
2
1 287
288 4761...

result:

ok Correct (42 test cases)

Test #37:

score: 0
Accepted
time: 6ms
memory: 3784kb

input:

69
2898
1043469461 887549000 375976511 641202294 878960199 722023725 570188910 937161815 878558705 34638420 597411082 869488413 382147772 594460075 498438352 733654425 1067577882 331916040 1043788544 1014317250 332187708 695658657 836342240 856880689 101765274 605650836 28207929 123846822 992872560 ...

output:

YES
3
1 1308
1309 1811
1812 2898
YES
2
1 2897
2898 2898
YES
2
1 2896
2897 2898
YES
3
1 2068
2069 2897
2898 2898
NO
NO
YES
2
1 1937
1938 2898
NO
YES
3
1 893
894 2613
2614 2898
YES
3
1 1108
1109 2897
2898 2898
YES
2
1 1021
1022 2898
YES
3
1 1301
1302 1836
1837 2898
NO
YES
2
1 2897
2898 2898
YES
3
1 12...

result:

ok Correct (69 test cases)