QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#885123#9772. Permutation RoutinghhoppitreeAC ✓98ms9912kbC++201.7kb2025-02-06 13:59:172025-02-06 13:59:18

Judging History

This is the latest submission verdict.

  • [2025-02-06 13:59:18]
  • Judged
  • Verdict: AC
  • Time: 98ms
  • Memory: 9912kb
  • [2025-02-06 13:59:17]
  • Submitted

answer

#include <bits/stdc++.h>

using namespace std;

const int N = 1005;

int p[N], f[N][N];
vector<int> G[N];

signed main() {
    int T; scanf("%d", &T);
    while (T--) {
        int n; scanf("%d", &n);
        vector< array<long long, 4> > E;
        for (int i = 1; i <= n; ++i) scanf("%d", &p[i]), G[i].clear();
        for (int i = 1, x, y; i < n; ++i) {
            scanf("%d%d", &x, &y), E.push_back({0, x, y, i}), G[x].push_back(y), G[y].push_back(x);
        }
        for (int i = 1; i <= n; ++i) {
            for (int j = 1; j <= n; ++j) f[i][j] = 1e9;
            f[i][i] = 0;
            queue<int> Q;
            Q.push(i);
            while (!Q.empty()) {
                int x = Q.front(); Q.pop();
                for (auto v : G[x]) {
                    if (f[i][v] > f[i][x] + 1) {
                        f[i][v] = f[i][x] + 1, Q.push(v);
                    }
                }
            }
        }
        vector< vector<int> > res;
        while (!is_sorted(p + 1, p + n + 1)) {
            for (auto &[a, b, c, d] : E) {
                a = 1ll * f[b][p[b]] * f[b][p[b]] + 1ll * f[c][p[c]] * f[c][p[c]] - 1ll * f[b][p[c]] * f[b][p[c]] - 1ll * f[c][p[b]] * f[c][p[b]];
            }
            sort(E.rbegin(), E.rend());
            bitset<N> vis;
            res.push_back({});
            for (auto [a, b, c, d] : E) {
                if  (vis[b] || vis[c] || a < 0) continue;
                vis[b] = vis[c] = 1, swap(p[b], p[c]);
                res.back().push_back(d);
            }
        }
        printf("%d\n", (int)res.size());
        for (auto x : res) {
            printf("%d", (int)x.size());
            for (auto v : x) printf(" %d", v);
            puts("");
        }
    }
    return 0;
}

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

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3840kb

input:

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

output:

3
2 3 4
1 1
2 2 4

result:

ok ok, up to 3 steps were used

Test #2:

score: 0
Accepted
time: 16ms
memory: 3840kb

input:

10000
5
2 3 1 5 4
1 5
3 2
1 2
1 4
5
1 2 3 4 5
2 3
3 4
2 1
4 5
5
4 2 5 1 3
3 5
2 3
4 1
3 1
5
1 3 4 2 5
5 3
2 1
1 3
2 4
5
1 2 3 4 5
2 1
3 5
2 3
5 4
5
1 2 3 4 5
4 5
3 4
4 2
4 1
5
5 2 1 4 3
2 1
5 1
3 1
1 4
5
4 1 2 5 3
3 1
5 1
1 2
1 4
5
5 3 4 2 1
3 1
3 5
4 3
3 2
5
3 4 1 2 5
3 2
3 5
1 5
3 4
5
3 4 1 2 5
2 ...

output:

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

result:

ok ok, up to 6 steps were used

Test #3:

score: 0
Accepted
time: 56ms
memory: 3968kb

input:

10000
10
2 7 5 6 4 8 3 1 10 9
8 10
6 1
5 6
4 7
10 2
6 8
7 6
5 3
9 8
10
4 10 6 1 8 3 9 5 7 2
3 10
9 10
5 10
4 6
10 8
10 4
7 10
4 2
4 1
10
9 7 5 10 3 8 2 6 1 4
10 3
9 3
6 3
7 3
4 3
2 3
5 2
3 8
3 1
10
10 9 5 6 3 4 8 7 2 1
2 6
7 8
5 2
4 9
9 3
3 8
8 5
6 10
4 1
10
2 1 6 7 10 3 4 9 8 5
10 3
3 5
1 3
3 2
3 9...

output:

7
2 6 5
2 2 1
2 6 5
2 1 7
4 3 5 9 4
3 7 1 8
1 4
12
2 4 1
1 6
2 1 4
1 9
1 6
2 8 5
1 3
1 5
1 6
1 2
1 7
1 2
12
1 6
2 4 7
1 6
1 1
1 5
1 1
1 2
1 9
1 2
1 3
1 8
1 3
10
5 5 2 8 3 9
3 4 1 7
4 3 6 8 9
3 5 7 1
4 6 3 4 8
4 5 7 9 1
4 6 3 4 8
4 5 7 1 9
4 3 8 6 4
2 7 1
13
1 6
1 1
1 2
1 1
1 5
1 9
1 5
1 8
1 7
1 8
1 ...

result:

ok ok, up to 15 steps were used

Test #4:

score: 0
Accepted
time: 50ms
memory: 3968kb

input:

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

output:

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

result:

ok ok, up to 28 steps were used

Test #5:

score: 0
Accepted
time: 45ms
memory: 5864kb

input:

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

output:

40
12 9 5 47 8 11 32 2 48 34 26 6 7
10 35 28 31 22 38 18 20 26 6 7
9 43 44 2 19 18 20 26 6 7
8 21 47 38 9 18 26 6 7
8 28 3 43 31 18 26 6 7
7 35 48 44 21 26 6 7
8 18 43 17 20 12 26 6 7
10 21 35 23 32 29 48 46 26 6 7
7 43 3 4 22 46 6 7
7 48 35 26 21 46 6 7
9 47 17 18 3 46 45 27 6 7
9 21 19 49 48 2 1 4...

result:

ok ok, up to 72 steps were used

Test #6:

score: 0
Accepted
time: 46ms
memory: 4096kb

input:

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

output:

43
11 48 33 2 6 30 47 23 36 25 28 27
13 17 46 24 21 5 32 38 40 9 25 12 18 27
14 33 45 44 22 20 47 28 14 9 25 39 12 18 27
13 2 21 13 32 23 19 38 9 25 39 36 8 27
11 45 24 33 12 35 47 9 25 39 18 27
10 46 2 8 44 38 9 25 39 23 27
10 22 45 11 18 19 17 9 25 39 27
8 46 21 7 2 23 9 25 39
8 33 11 22 45 27 9 2...

result:

ok ok, up to 73 steps were used

Test #7:

score: 0
Accepted
time: 47ms
memory: 4352kb

input:

100
100
49 90 5 62 95 42 92 16 74 58 66 85 21 98 15 6 73 13 40 78 44 2 93 11 54 76 80 34 89 96 31 56 67 77 79 39 26 14 23 81 3 69 37 97 83 25 12 22 61 48 17 84 35 47 36 53 7 91 60 100 82 57 4 99 45 28 70 72 59 86 33 64 75 41 94 51 29 46 20 8 24 52 1 43 19 27 38 10 55 68 32 71 65 9 30 88 18 87 63 50
...

output:

80
28 10 9 73 35 61 8 78 52 95 36 2 72 74 86 91 85 26 50 6 47 33 7 24 45 66 4 5 15
20 37 67 38 20 25 87 51 13 23 46 54 45 66 90 80 4 96 5 19 15
17 8 75 30 29 36 6 1 39 45 82 66 80 4 96 5 19 15
16 44 63 79 21 6 1 39 82 66 80 54 4 16 5 19 15
15 68 45 34 42 1 39 82 66 80 54 4 96 5 19 15
16 8 6 16 74 1 ...

result:

ok ok, up to 144 steps were used

Test #8:

score: 0
Accepted
time: 47ms
memory: 4352kb

input:

100
100
86 35 82 12 83 29 60 50 90 33 87 4 47 51 70 96 48 31 89 84 92 37 55 94 78 80 57 46 6 99 18 74 10 38 2 63 22 34 67 77 72 44 68 42 79 28 13 17 62 8 14 91 97 98 23 66 27 69 100 7 75 49 36 73 88 56 39 43 58 15 85 41 64 32 61 95 40 25 45 26 93 3 5 20 71 1 11 65 19 9 52 21 81 24 76 16 53 54 30 59
...

output:

85
24 83 51 48 45 27 62 86 97 10 43 60 66 4 96 74 50 3 69 21 67 81 91 6 32
13 47 61 25 52 19 79 78 68 65 85 46 31 17
16 67 18 51 91 81 58 57 99 80 56 46 31 50 34 92 17
15 83 79 33 74 59 53 56 46 31 52 50 6 34 76 17
13 47 22 98 99 77 56 46 31 52 50 34 25 17
16 83 51 48 26 88 3 60 85 56 46 31 50 34 76...

result:

ok ok, up to 141 steps were used

Test #9:

score: 0
Accepted
time: 45ms
memory: 8452kb

input:

1
1000
852 223 408 154 361 680 77 982 706 853 792 191 955 586 379 419 503 697 500 694 599 90 782 234 186 750 322 213 91 315 882 420 605 177 968 269 175 386 69 825 488 696 58 316 877 885 375 872 589 109 75 263 442 760 273 663 547 43 426 372 844 579 425 777 865 878 409 466 39 286 538 726 771 401 51 75...

output:

804
242 400 869 748 525 395 338 456 687 428 292 811 623 423 917 618 45 44 870 96 257 981 417 271 890 713 54 254 207 279 480 466 940 131 430 361 772 414 116 994 162 957 657 835 813 186 453 432 15 321 523 718 902 788 46 608 562 76 18 664 442 906 2 106 662 588 258 111 857 950 789 904 437 312 517 655 66...

result:

ok ok, up to 804 steps were used

Test #10:

score: 0
Accepted
time: 42ms
memory: 8208kb

input:

1
1000
690 995 868 467 793 949 539 17 557 637 246 77 677 681 714 642 40 43 69 594 433 612 283 865 152 907 30 486 979 253 139 227 810 478 932 439 202 508 388 901 705 821 822 209 920 725 133 469 165 205 16 403 598 858 198 81 954 600 7 387 335 178 658 859 115 905 166 55 127 745 738 144 511 383 648 452 ...

output:

683
296 541 262 482 616 401 317 94 184 535 421 566 944 772 686 712 730 543 522 667 737 765 577 72 112 397 882 104 114 32 556 873 203 150 349 196 515 867 435 360 13 409 499 200 325 940 820 942 19 9 298 704 826 210 159 974 828 722 208 141 134 142 823 648 10 107 16 57 14 943 696 62 304 373 547 923 295 ...

result:

ok ok, up to 683 steps were used

Test #11:

score: 0
Accepted
time: 42ms
memory: 8160kb

input:

1
1000
981 206 539 504 568 390 696 919 303 771 71 524 891 51 96 748 158 236 88 633 652 740 616 762 348 636 53 479 509 409 557 920 738 326 224 592 898 867 522 530 953 939 793 657 819 1 110 500 200 170 559 435 627 589 560 551 359 323 787 30 239 783 650 442 969 68 459 830 966 380 630 482 550 352 14 929...

output:

621
307 731 206 823 859 939 441 613 223 82 65 523 359 246 591 74 750 241 503 853 736 329 31 188 721 707 665 304 938 378 737 735 255 257 570 726 776 867 590 360 929 924 648 238 402 831 874 30 852 420 124 662 21 667 139 678 418 38 894 122 416 914 567 15 395 56 940 733 587 509 151 466 936 538 586 637 6...

result:

ok ok, up to 621 steps were used

Test #12:

score: 0
Accepted
time: 56ms
memory: 9092kb

input:

1
1000
327 708 701 120 714 171 723 70 98 93 402 303 137 145 936 525 741 99 328 656 48 553 753 783 945 254 547 405 823 842 844 822 690 206 436 6 919 560 267 886 613 147 810 908 771 130 407 893 578 439 929 426 59 879 738 770 156 651 323 119 697 357 884 599 990 347 172 590 545 438 223 677 663 363 115 2...

output:

846
330 474 354 243 808 569 198 373 510 56 336 622 301 711 307 235 187 561 701 619 676 51 526 611 159 809 609 48 27 259 83 951 907 588 847 269 958 282 464 396 492 678 64 652 875 179 332 324 72 491 141 489 203 149 765 788 639 814 986 337 731 853 547 794 954 863 697 681 824 285 694 101 406 57 222 12 1...

result:

ok ok, up to 846 steps were used

Test #13:

score: 0
Accepted
time: 63ms
memory: 9060kb

input:

1
1000
332 858 822 192 770 336 467 401 841 606 399 550 239 834 383 300 497 970 19 542 688 478 994 273 553 541 676 654 667 348 904 906 986 21 997 900 437 684 568 44 634 216 120 333 123 231 42 631 488 442 435 824 12 93 774 877 203 490 15 565 151 413 567 782 777 484 861 206 188 707 334 374 99 136 178 5...

output:

966
362 579 486 411 509 113 126 254 675 383 902 195 495 775 318 92 644 249 726 382 903 982 956 33 876 861 725 664 813 683 166 856 155 489 9 522 984 803 110 21 39 932 512 907 724 886 307 583 336 914 843 35 43 735 595 128 998 1 901 573 769 936 299 148 749 311 927 490 789 607 797 930 883 814 504 271 95...

result:

ok ok, up to 966 steps were used

Test #14:

score: 0
Accepted
time: 51ms
memory: 8080kb

input:

1
1000
115 372 488 59 513 596 934 677 862 54 696 855 901 825 265 417 899 693 490 203 536 735 402 875 289 510 793 522 199 695 25 726 710 422 137 572 274 881 374 755 163 295 343 219 888 205 597 454 806 39 782 138 889 344 858 160 7 72 185 815 820 830 968 795 691 217 271 772 646 546 840 998 520 670 777 ...

output:

950
95 515 32 101 560 131 741 518 34 423 956 366 469 717 653 448 187 919 17 843 177 851 438 392 730 257 505 993 93 193 118 252 436 949 958 808 971 542 888 180 332 253 797 838 268 615 510 222 140 20 415 931 987 413 291 223 912 719 563 311 12 400 27 166 936 723 282 377 803 272 376 480 197 762 800 894 ...

result:

ok ok, up to 950 steps were used

Test #15:

score: 0
Accepted
time: 50ms
memory: 8044kb

input:

1
1000
717 305 986 429 917 628 985 204 341 749 852 307 820 711 484 562 866 473 800 40 241 127 71 565 310 808 480 925 987 250 755 125 848 535 479 295 383 188 375 640 646 466 842 813 752 203 704 831 919 315 994 817 676 386 157 830 374 355 795 60 995 758 814 745 778 681 964 1 279 512 636 862 665 298 68...

output:

951
35 154 481 31 347 690 261 46 826 442 204 568 190 654 44 935 531 403 743 968 538 389 293 638 159 242 785 456 795 184 50 21 76 658 506 239
31 67 906 654 44 935 531 616 403 113 968 538 389 293 638 558 159 242 785 456 795 209 138 184 656 50 21 761 76 658 506 239
31 158 650 654 44 935 531 616 403 946...

result:

ok ok, up to 951 steps were used

Test #16:

score: 0
Accepted
time: 64ms
memory: 7916kb

input:

1
1000
310 363 446 303 748 979 8 485 694 948 702 771 36 191 666 891 559 413 845 895 827 67 498 658 971 868 473 674 913 421 65 377 692 536 802 467 237 292 22 967 732 660 275 490 690 672 128 577 833 107 810 353 392 958 824 15 158 243 901 991 717 344 904 565 350 881 641 512 898 159 633 999 422 501 528 ...

output:

993
5 707 458 261 471 735
4 417 932 735 986
4 599 932 735 986
4 778 932 735 986
4 126 932 735 986
4 92 932 735 986
4 576 932 735 986
4 172 932 735 986
4 763 932 735 986
4 124 932 735 986
4 785 932 735 986
4 409 932 735 986
4 649 932 735 986
4 481 932 735 986
4 984 932 735 986
4 381 932 735 986
4 60 ...

result:

ok ok, up to 993 steps were used

Test #17:

score: 0
Accepted
time: 69ms
memory: 8004kb

input:

1
1000
77 278 871 920 284 552 661 728 2 158 428 62 898 909 18 496 195 754 63 957 946 772 703 82 394 806 701 197 941 758 665 573 982 308 736 389 423 616 416 530 874 618 494 436 322 939 447 631 391 136 208 985 681 424 529 393 595 19 841 30 461 605 440 132 587 825 848 869 107 512 364 169 872 679 849 75...

output:

1005
1 880
1 181
1 732
1 155
1 201
1 493
1 39
1 663
1 242
1 425
1 696
1 728
1 394
1 642
1 436
1 5
1 123
1 483
1 589
1 395
1 667
1 579
1 513
1 423
1 411
1 994
1 817
1 958
1 275
1 424
1 28
1 941
1 264
1 568
1 621
1 901
1 646
1 252
1 991
1 778
1 509
1 12
1 928
1 286
1 600
1 407
1 859
1 295
1 753
1 391
...

result:

ok ok, up to 1005 steps were used

Test #18:

score: 0
Accepted
time: 44ms
memory: 8400kb

input:

1
999
977 98 254 594 144 861 64 706 322 185 959 376 323 840 42 799 653 762 698 150 162 58 530 189 649 112 430 341 515 303 837 657 344 232 290 867 137 352 716 755 488 15 919 250 49 597 127 420 45 693 314 384 170 745 536 312 178 22 141 79 266 84 80 7 545 210 616 748 843 225 487 588 418 229 414 689 575...

output:

833
254 544 739 338 12 989 85 3 458 119 349 485 56 940 446 53 961 978 810 54 367 853 744 607 970 290 75 444 229 595 373 114 708 491 453 504 792 657 929 360 251 50 883 139 343 523 535 98 359 563 719 71 659 963 358 241 170 345 217 433 892 494 809 420 207 534 858 738 190 746 470 785 948 308 287 908 303...

result:

ok ok, up to 833 steps were used

Test #19:

score: 0
Accepted
time: 43ms
memory: 8200kb

input:

1
999
266 532 27 286 491 460 989 270 745 828 710 910 428 608 178 855 803 851 719 938 627 684 584 661 547 827 3 641 771 223 567 241 275 476 933 417 287 705 545 272 904 572 747 92 589 168 384 613 928 237 936 728 870 349 724 183 617 624 626 240 508 354 538 578 133 190 477 787 308 120 323 590 798 664 11...

output:

736
300 613 214 637 477 491 876 313 582 85 980 816 549 644 619 629 280 338 460 897 265 779 674 104 755 121 48 86 667 383 584 176 154 178 657 506 762 385 696 578 731 499 310 418 298 911 724 140 778 316 306 776 373 500 143 395 837 744 689 733 394 357 101 261 589 13 329 847 803 212 829 972 681 754 781 ...

result:

ok ok, up to 736 steps were used

Test #20:

score: 0
Accepted
time: 67ms
memory: 8576kb

input:

1
999
32 791 286 948 176 560 246 200 367 339 179 369 474 328 772 886 982 954 604 262 944 602 491 965 585 408 970 638 686 896 769 1 873 703 444 658 348 96 891 514 118 78 52 904 469 851 956 468 996 299 64 43 311 539 738 927 788 224 959 79 141 940 967 51 376 244 343 350 379 949 421 844 382 775 465 414 ...

output:

1073
323 966 774 933 850 151 295 869 707 943 227 33 979 884 768 730 257 280 533 134 552 609 960 875 849 108 212 458 948 176 239 282 52 998 646 569 54 331 580 209 748 690 415 956 312 383 681 291 339 86 832 350 969 824 34 479 521 833 581 364 318 904 433 161 505 446 20 218 770 823 639 612 498 290 286 9...

result:

ok ok, up to 1073 steps were used

Test #21:

score: 0
Accepted
time: 74ms
memory: 9848kb

input:

1
999
162 333 835 598 275 157 150 732 33 26 263 815 589 327 515 530 581 239 565 251 126 705 855 155 382 10 406 185 599 802 445 661 9 600 74 574 163 952 474 462 340 125 250 137 992 660 727 407 486 226 612 287 658 945 82 399 416 939 171 838 120 644 194 114 752 831 351 413 96 316 317 946 109 35 318 692...

output:

1226
400 427 841 647 860 301 710 374 223 940 981 163 461 716 902 570 209 695 453 616 72 129 139 138 464 912 108 767 326 512 507 984 111 971 483 908 847 153 804 957 270 6 448 207 742 45 150 213 51 549 609 785 251 205 113 880 148 500 245 579 629 652 620 152 398 764 329 594 248 538 791 955 319 173 117 ...

result:

ok ok, up to 1226 steps were used

Test #22:

score: 0
Accepted
time: 65ms
memory: 9896kb

input:

1
999
709 23 572 330 7 668 5 576 217 663 840 634 47 731 182 724 413 574 38 225 459 739 2 609 234 281 537 76 718 403 800 529 979 913 75 661 134 19 83 445 90 810 248 583 348 478 13 695 392 623 894 550 631 523 783 373 111 431 425 652 487 253 719 98 854 711 130 588 686 159 903 753 836 222 35 28 749 817 ...

output:

1014
430 140 137 648 815 490 913 657 537 429 613 894 611 859 602 929 949 323 577 491 821 795 991 647 362 909 678 197 247 800 321 346 883 620 450 580 631 995 889 366 336 518 275 420 626 342 167 266 687 48 523 195 895 438 591 52 988 198 706 364 740 715 919 200 807 339 922 80 596 828 650 688 279 423 21...

result:

ok ok, up to 1014 steps were used

Test #23:

score: 0
Accepted
time: 55ms
memory: 8116kb

input:

1
999
719 626 485 972 276 492 226 237 77 102 843 188 386 650 123 976 24 861 233 391 973 29 543 17 172 468 927 588 22 141 119 566 98 700 769 282 271 432 956 995 692 837 308 848 180 216 442 482 451 793 913 942 362 463 729 64 983 965 986 259 345 890 534 56 152 450 266 647 300 326 759 900 254 929 786 35...

output:

984
95 792 635 686 166 527 85 581 809 400 434 269 841 255 632 701 158 733 756 272 395 448 973 171 356 834 637 778 165 946 921 109 169 451 830 274 459 159 854 244 216 600 132 375 160 328 511 500 575 874 174 120 443 220 722 240 984 520 275 629 4 732 215 539 367 941 123 925 745 180 942 618 985 199 104 ...

result:

ok ok, up to 984 steps were used

Test #24:

score: 0
Accepted
time: 59ms
memory: 8116kb

input:

1
999
759 723 437 606 248 905 512 502 912 612 469 81 971 736 446 481 888 903 672 823 229 900 959 148 532 220 225 849 241 943 88 263 810 228 915 45 934 167 89 879 782 859 315 426 36 252 451 142 604 894 910 549 677 561 57 476 55 427 682 652 120 352 779 292 289 815 996 590 923 435 796 366 855 181 507 9...

output:

1101
26 666 664 143 668 572 432 239 656 782 798 593 639 836 461 180 487 548 97 590 282 484 23 253 238 904 200
24 19 432 239 866 656 782 798 545 593 639 836 693 461 180 487 97 590 282 484 23 253 238 904 200
24 190 717 432 239 866 656 782 798 545 639 836 693 461 180 487 97 590 282 484 23 253 238 904 2...

result:

ok ok, up to 1101 steps were used

Test #25:

score: 0
Accepted
time: 89ms
memory: 8028kb

input:

1
999
920 435 55 749 629 95 418 187 971 806 239 760 641 396 219 47 777 413 500 229 271 182 571 754 162 624 935 790 755 646 739 447 341 949 485 236 193 363 315 633 463 656 852 129 126 696 16 710 961 542 59 156 483 841 3 246 992 972 51 947 651 969 405 516 85 821 71 487 848 98 67 857 709 281 895 825 14...

output:

1432
5 420 714 314 610 696
4 989 610 696 898
4 889 36 610 696
4 989 420 610 696
5 881 714 898 610 696
3 253 610 696
3 989 610 696
4 889 975 610 696
4 989 898 610 696
5 314 253 375 610 696
5 598 778 801 610 696
4 989 801 610 696
5 133 356 801 610 696
4 989 801 610 696
5 778 598 801 610 696
5 629 752 ...

result:

ok ok, up to 1432 steps were used

Test #26:

score: 0
Accepted
time: 97ms
memory: 7888kb

input:

1
999
311 242 610 99 258 592 164 715 179 45 161 139 499 398 738 170 404 234 445 395 63 33 968 301 323 568 938 447 721 855 584 645 22 601 300 710 279 923 700 265 380 489 853 613 10 297 166 574 324 278 152 407 263 187 117 798 340 470 202 221 411 622 21 876 820 659 261 885 405 905 831 289 126 237 825 2...

output:

1495
1 467
1 667
1 303
1 667
1 152
1 572
1 152
1 592
1 188
1 592
1 324
1 524
1 324
1 133
1 450
1 133
1 407
1 245
1 407
1 122
1 304
1 122
1 252
1 230
1 252
1 892
1 903
1 892
1 793
1 386
1 793
1 352
1 179
1 352
1 742
1 128
1 742
1 337
1 458
1 337
1 685
1 576
1 685
1 978
1 917
1 978
1 477
1 555
1 477
1...

result:

ok ok, up to 1495 steps were used

Test #27:

score: 0
Accepted
time: 41ms
memory: 8320kb

input:

1
998
948 460 335 899 872 723 754 646 789 772 119 382 651 383 942 755 774 997 446 970 867 949 471 67 935 391 875 632 727 992 366 915 369 88 207 889 918 511 526 138 792 384 967 388 162 661 179 375 304 897 559 368 688 907 267 531 787 573 817 943 530 278 677 814 327 850 24 606 339 37 435 578 75 169 73 ...

output:

745
260 939 702 69 601 489 663 867 445 347 645 648 713 264 607 731 249 787 419 462 914 945 27 399 296 496 984 963 30 553 41 271 380 524 847 36 540 678 461 466 472 728 739 954 402 747 732 856 838 696 331 978 91 752 279 684 79 548 327 39 499 786 714 623 554 782 198 485 476 103 236 807 251 528 785 812 ...

result:

ok ok, up to 745 steps were used

Test #28:

score: 0
Accepted
time: 45ms
memory: 8360kb

input:

1
998
494 391 49 950 498 165 692 300 510 673 931 837 954 352 465 197 719 959 328 896 303 198 461 729 298 887 437 549 445 696 457 955 378 552 765 73 180 383 103 980 321 852 194 345 105 513 471 538 3 527 878 708 732 148 913 833 806 894 111 897 816 790 828 947 858 604 388 142 517 455 367 632 36 240 396...

output:

774
301 417 711 577 68 130 127 788 755 948 343 295 986 590 787 583 599 409 512 558 731 611 448 141 22 276 597 524 415 683 61 801 315 650 310 752 485 659 736 325 56 532 822 773 849 942 5 153 217 644 489 671 953 641 197 627 806 596 223 270 182 938 662 418 764 104 898 780 937 166 277 82 857 637 90 360 ...

result:

ok ok, up to 774 steps were used

Test #29:

score: 0
Accepted
time: 61ms
memory: 8712kb

input:

1
998
765 850 400 698 96 680 434 963 388 616 398 505 511 25 611 887 550 641 153 736 743 946 908 659 14 595 984 939 332 937 373 792 787 251 150 617 767 809 990 477 959 953 380 358 789 462 987 348 227 929 931 168 510 452 823 387 627 614 62 466 529 59 449 410 711 758 649 158 541 403 531 475 968 795 412...

output:

1009
332 974 964 301 357 462 86 851 815 194 133 324 251 279 745 504 489 464 539 454 920 607 656 215 786 686 816 651 419 638 487 319 5 444 411 470 874 167 624 597 351 61 787 721 740 769 765 879 79 321 123 912 625 75 317 36 122 203 601 306 424 476 14 21 217 191 809 677 915 592 183 380 662 102 226 475 ...

result:

ok ok, up to 1009 steps were used

Test #30:

score: 0
Accepted
time: 76ms
memory: 9688kb

input:

1
998
627 431 727 497 487 126 684 838 644 15 516 818 127 44 10 657 823 189 63 115 939 963 873 607 346 706 608 79 210 461 392 243 454 227 647 565 774 851 478 625 141 910 177 14 239 317 498 543 457 294 893 531 132 234 492 804 92 585 908 116 678 674 19 583 856 403 595 688 554 797 223 596 789 295 438 24...

output:

1158
408 973 678 512 993 674 868 364 224 197 682 782 437 282 591 310 943 535 959 642 670 424 478 584 458 438 788 372 61 150 320 935 76 598 432 190 377 100 238 662 17 955 776 517 113 526 564 826 897 728 289 371 163 63 155 899 550 561 765 19 676 679 388 339 6 276 694 72 582 87 12 449 490 278 230 879 4...

result:

ok ok, up to 1158 steps were used

Test #31:

score: 0
Accepted
time: 67ms
memory: 9912kb

input:

1
998
733 959 347 569 526 485 632 134 887 320 369 825 92 463 536 915 808 805 589 982 537 826 812 336 647 686 638 884 36 841 243 429 687 855 483 29 293 140 892 280 94 750 682 816 394 791 676 186 913 339 766 945 655 960 718 480 866 974 85 121 849 188 206 933 604 517 820 553 476 313 370 420 964 193 528...

output:

1009
435 450 964 141 531 332 511 988 709 113 406 896 28 45 80 863 339 466 924 489 759 647 643 323 48 995 891 444 913 769 327 593 225 86 785 147 78 69 821 124 60 201 207 131 213 861 376 579 240 825 84 978 686 712 338 658 251 691 953 384 401 196 983 735 559 432 161 604 872 279 703 713 928 560 374 19 6...

result:

ok ok, up to 1009 steps were used

Test #32:

score: 0
Accepted
time: 54ms
memory: 8216kb

input:

1
998
238 368 91 13 760 72 419 694 981 177 883 447 4 329 902 810 141 624 473 919 916 507 778 923 701 863 657 812 200 832 256 605 472 974 301 328 515 304 481 62 176 297 891 345 661 769 889 595 488 422 849 276 954 644 897 708 960 333 236 240 326 40 485 564 782 896 79 197 187 869 136 6 830 828 60 788 4...

output:

963
84 983 596 604 262 568 191 106 336 629 892 745 417 856 889 27 773 229 111 115 697 359 832 166 164 443 436 615 54 927 913 265 426 893 289 667 168 235 183 404 881 979 538 654 240 863 80 850 977 909 937 114 455 885 571 228 441 557 659 456 720 478 603 561 512 800 107 406 72 731 645 85 516 819 422 75...

result:

ok ok, up to 963 steps were used

Test #33:

score: 0
Accepted
time: 57ms
memory: 8000kb

input:

1
998
657 220 904 795 418 211 522 176 489 271 647 237 700 935 594 194 535 136 835 286 259 838 858 551 906 623 502 154 508 141 742 797 863 682 500 920 299 899 850 642 68 495 689 282 656 735 745 796 181 593 894 929 783 723 713 414 260 314 354 668 563 193 727 768 845 996 625 41 376 296 983 235 677 840 ...

output:

1067
27 489 982 60 603 367 588 272 54 323 865 345 830 99 16 388 192 208 914 920 748 877 445 749 501 33 520 495
27 212 807 588 272 54 323 865 345 830 99 16 388 192 208 920 748 877 445 590 183 461 749 501 33 520 438 495
26 672 826 588 272 54 865 345 830 99 16 388 192 208 920 748 877 445 590 183 461 74...

result:

ok ok, up to 1067 steps were used

Test #34:

score: 0
Accepted
time: 91ms
memory: 8020kb

input:

1
998
571 670 211 487 704 982 672 742 89 547 852 953 925 808 256 92 828 807 288 236 815 570 430 408 434 407 426 447 763 310 694 720 706 870 36 35 61 622 479 791 46 208 944 933 389 41 417 514 504 712 106 543 343 143 992 134 793 891 613 630 37 234 616 93 589 887 212 544 345 477 945 113 866 278 853 814...

output:

1426
4 641 476 926 217
3 185 926 217
4 745 231 926 217
4 120 305 900 217
4 926 745 900 217
5 584 609 900 298 217
4 316 900 298 217
3 185 298 217
4 124 641 298 217
4 311 900 298 217
4 476 245 298 217
4 894 245 298 217
3 185 298 217
4 205 734 298 217
3 185 298 217
4 900 894 298 217
4 245 339 298 217
3...

result:

ok ok, up to 1426 steps were used

Test #35:

score: 0
Accepted
time: 98ms
memory: 7936kb

input:

1
998
648 130 748 548 766 651 270 645 672 196 25 141 588 538 622 530 658 580 763 359 794 476 341 579 11 614 893 255 703 612 569 290 232 446 393 323 535 371 821 870 281 157 518 148 325 619 986 138 434 807 923 626 714 250 239 209 620 309 945 829 347 360 118 173 367 693 571 957 599 568 725 973 488 936 ...

output:

1488
1 67
1 106
1 277
1 106
1 413
1 504
1 413
1 435
1 907
1 435
1 826
1 498
1 826
1 393
1 902
1 393
1 91
1 521
1 91
1 950
1 191
1 950
1 211
1 333
1 211
1 195
1 530
1 195
1 974
1 833
1 974
1 685
1 989
1 685
1 133
1 540
1 133
1 297
1 33
1 297
1 353
1 650
1 353
1 304
1 50
1 304
1 247
1 982
1 247
1 51
1...

result:

ok ok, up to 1488 steps were used

Test #36:

score: 0
Accepted
time: 0ms
memory: 3840kb

input:

1
1
1

output:

0

result:

ok ok, up to 0 steps were used

Test #37:

score: 0
Accepted
time: 41ms
memory: 4096kb

input:

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

output:

34
15 47 9 26 33 15 41 36 24 45 10 27 29 32 39 6
9 23 7 5 34 1 17 12 6 3
9 9 36 43 39 13 33 47 6 3
8 23 34 1 42 18 20 6 3
9 39 36 43 5 13 10 30 6 3
8 18 34 1 8 9 45 6 3
8 43 5 13 23 37 6 41 3
10 9 18 34 11 27 39 35 6 41 3
9 36 23 5 43 20 6 42 41 3
8 1 34 9 18 39 6 41 3
8 36 35 43 5 23 8 6 3
10 34 33...

result:

ok ok, up to 71 steps were used

Test #38:

score: 0
Accepted
time: 34ms
memory: 8368kb

input:

3
1
1
986
986 985 984 983 982 981 980 979 978 977 976 975 974 973 972 971 970 969 968 967 966 965 964 963 962 961 960 959 958 957 956 955 954 953 952 951 950 949 948 947 946 945 944 943 942 941 940 939 938 937 936 935 934 933 932 931 930 929 928 927 926 925 924 923 922 921 920 919 918 917 916 915 91...

output:

0
759
353 975 960 954 943 926 913 907 899 888 873 867 856 837 824 818 799 790 784 771 765 755 744 729 723 712 695 682 676 668 657 642 636 625 604 591 585 566 557 551 538 532 511 479 462 449 443 424 415 409 396 390 367 352 346 335 318 305 299 291 280 265 259 248 229 216 210 191 182 176 163 157 147 13...

result:

ok ok, up to 759 steps were used

Test #39:

score: 0
Accepted
time: 35ms
memory: 8372kb

input:

3
1
1
986
986 985 984 983 982 981 980 979 978 977 976 975 974 973 972 971 970 969 968 967 966 965 964 963 962 961 960 959 958 957 956 955 954 953 952 951 950 949 948 947 946 945 944 943 942 941 940 939 938 937 936 935 934 933 932 931 930 929 928 927 926 925 924 923 922 921 920 919 918 917 916 915 91...

output:

0
758
359 17 28 34 49 60 68 74 87 104 115 121 136 147 157 163 176 182 191 210 216 229 248 259 265 280 291 299 305 318 335 346 352 367 390 396 409 415 424 443 449 462 479 511 532 538 551 557 566 585 591 604 625 636 642 657 668 676 682 695 712 723 729 744 755 765 771 784 790 799 818 824 837 856 867 87...

result:

ok ok, up to 758 steps were used

Test #40:

score: 0
Accepted
time: 36ms
memory: 8372kb

input:

3
1
1
986
973 974 972 975 970 971 976 967 968 966 969 977 962 963 961 964 959 960 965 978 954 955 953 956 951 952 957 948 949 947 950 958 979 941 942 940 943 938 939 944 935 936 934 937 945 930 931 929 932 927 928 933 946 980 920 921 919 922 917 918 923 914 915 913 916 924 909 910 908 911 906 907 91...

output:

0
756
370 610 932 979 978 973 962 947 940 920 931 918 909 879 897 885 875 860 864 810 839 829 820 803 802 797 778 776 701 748 741 731 716 720 689 687 648 665 625 522 598 609 596 587 570 569 564 545 543 502 520 514 509 498 483 476 435 464 454 428 421 403 400 392 235 358 376 364 354 339 343 312 310 27...

result:

ok ok, up to 756 steps were used

Test #41:

score: 0
Accepted
time: 35ms
memory: 8336kb

input:

3
1
1
986
986 985 983 984 981 980 982 978 977 975 976 979 973 972 970 971 968 967 969 974 965 964 962 963 960 959 961 957 956 954 955 958 966 952 951 949 950 947 946 948 944 943 941 942 945 939 938 936 937 934 933 935 940 953 931 930 928 929 926 925 927 923 922 920 921 924 918 917 915 916 913 912 91...

output:

0
765
318 1 379 469 475 155 244 674 530 493 297 65 795 708 562 498 419 331 186 99 871 816 727 639 583 440 350 262 207 118 916 884 827 773 740 684 652 594 540 506 451 363 307 275 218 131 30 945 924 890 857 835 800 781 746 713 692 658 602 567 548 512 459 397 369 336 315 281 226 164 137 75 43 961 950 9...

result:

ok ok, up to 765 steps were used

Test #42:

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

input:

3
1
1
986
2 1 7 3 6 5 4 20 8 11 10 9 19 13 12 18 14 17 16 15 54 21 24 23 22 32 26 25 31 27 30 29 28 53 34 33 39 35 38 37 36 52 40 43 42 41 51 45 44 50 46 49 48 47 143 55 58 57 56 66 60 59 65 61 64 63 62 87 68 67 73 69 72 71 70 86 74 77 76 75 85 79 78 84 80 83 82 81 142 89 88 94 90 93 92 91 107 95 98...

output:

0
32
348 234 145 323 467 700 144 377 58 233 200 289 357 433 501 521 556 666 734 754 789 878 89 199 288 322 432 466 665 699 55 79 113 168 257 401 576 634 809 898 36 221 310 344 356 370 454 488 500 514 543 555 569 590 687 721 733 747 776 788 802 823 865 877 891 912 946 34 76 110 123 165 178 220 254 26...

result:

ok ok, up to 32 steps were used

Test #43:

score: 0
Accepted
time: 36ms
memory: 8312kb

input:

3
1
1
986
986 985 984 983 982 981 980 979 978 977 976 975 974 973 972 971 970 969 968 967 966 965 964 963 962 961 960 959 958 957 956 955 954 953 952 951 950 949 948 947 946 945 944 943 942 941 940 939 938 937 936 935 934 933 932 931 930 929 928 927 926 925 924 923 922 921 920 919 918 917 916 915 91...

output:

0
762
328 388 621 476 762 154 906 851 675 531 492 497 298 243 67 940 709 332 101 919 830 793 777 688 597 560 544 510 455 418 402 311 222 185 169 80 956 927 869 838 814 806 785 725 696 638 605 581 573 552 518 499 486 463 439 431 410 348 319 261 230 206 198 177 117 88 30 1 985 969 965 953 931 914 912 ...

result:

ok ok, up to 762 steps were used

Test #44:

score: 0
Accepted
time: 40ms
memory: 8480kb

input:

3
1
1
986
986 985 984 983 982 981 980 979 978 977 976 975 974 973 972 971 970 969 968 967 966 965 964 963 962 961 960 959 958 957 956 955 954 953 952 951 950 949 948 947 946 945 944 943 942 941 940 939 938 937 936 935 934 933 932 931 930 929 928 927 926 925 924 923 922 921 920 919 918 917 916 915 91...

output:

0
822
331 610 522 608 502 609 518 519 897 751 752 666 289 143 144 58 966 879 808 735 648 575 520 433 358 271 200 127 40 958 905 871 816 763 753 727 674 640 583 530 496 441 388 350 297 263 208 155 145 119 66 32 973 950 941 916 886 863 854 899 827 795 791 774 742 719 710 685 655 632 623 668 594 562 55...

result:

ok ok, up to 822 steps were used

Test #45:

score: 0
Accepted
time: 38ms
memory: 7844kb

input:

1
1000
996 43 577 950 687 195 887 640 567 684 142 595 290 471 322 5 885 318 272 246 98 607 931 578 718 867 45 676 655 616 650 222 367 615 31 385 203 834 488 437 710 603 804 392 713 399 311 70 847 617 513 411 575 695 347 431 463 216 77 306 295 144 566 475 270 933 897 892 706 954 526 440 240 919 974 7...

output:

667
334 216 546 29 290 132 813 366 236 694 202 97 203 422 50 642 273 618 925 791 189 971 929 671 451 437 418 353 395 449 881 895 921 339 365 135 576 955 747 904 410 302 730 467 181 287 280 378 440 699 678 940 363 268 246 503 888 74 269 47 412 621 197 717 425 69 464 426 976 224 222 819 227 997 643 55...

result:

ok ok, up to 667 steps were used

Test #46:

score: 0
Accepted
time: 40ms
memory: 7988kb

input:

1
1000
107 95 790 410 138 13 486 51 36 3 226 569 961 785 273 822 628 927 699 802 255 856 441 499 246 751 534 187 257 935 505 562 575 217 567 767 351 315 178 476 532 144 182 111 511 112 479 830 70 834 551 266 69 636 501 541 128 504 125 708 278 969 97 872 52 945 538 949 784 821 341 168 232 988 154 437...

output:

667
1 654
1 894
2 310 908
1 42
2 312 929
1 319
2 12 846
1 769
2 807 215
1 82
2 977 768
1 257
2 887 896
1 714
2 854 378
1 228
2 126 150
1 557
2 434 370
1 783
2 302 865
1 670
2 596 580
1 410
2 516 867
1 420
2 775 404
1 212
2 919 797
1 735
2 337 928
1 587
2 575 78
1 816
2 519 354
1 635
2 511 663
1 501
...

result:

ok ok, up to 667 steps were used

Test #47:

score: 0
Accepted
time: 43ms
memory: 7828kb

input:

1
1000
657 131 1 655 428 7 948 767 429 296 26 667 74 3 804 399 782 796 260 295 719 724 378 56 708 570 442 500 896 403 861 937 833 616 379 812 95 457 122 293 210 917 162 342 22 189 963 949 14 766 933 847 199 117 911 612 424 274 791 6 671 715 805 564 718 542 928 416 11 314 315 891 494 906 120 829 173 ...

output:

667
1 274
1 267
2 629 698
1 609
2 633 230
1 539
2 170 249
1 32
2 729 208
1 93
2 697 193
1 96
2 528 143
1 822
2 864 323
1 148
2 43 523
1 867
2 927 976
1 175
2 104 574
1 975
2 905 245
1 769
2 339 808
1 160
2 79 68
1 780
2 279 58
1 707
2 427 466
1 217
2 78 621
1 201
2 213 145
1 661
2 309 489
1 3
2 699 ...

result:

ok ok, up to 667 steps were used

Test #48:

score: 0
Accepted
time: 38ms
memory: 7976kb

input:

1
1000
291 378 38 938 62 810 402 752 333 22 916 737 852 709 865 667 686 954 716 419 876 191 853 829 841 904 296 471 387 151 823 167 7 455 509 719 325 4 893 235 570 204 206 196 911 16 366 638 303 903 885 414 948 102 715 50 334 593 444 774 635 819 362 990 642 730 541 65 901 493 271 377 857 170 586 252...

output:

667
334 300 77 344 569 891 976 225 39 977 147 644 357 962 421 361 272 753 70 270 384 1 266 81 677 843 292 975 945 219 229 780 37 979 252 513 6 169 609 743 323 627 429 959 852 789 510 197 115 449 348 232 116 485 285 984 568 676 284 964 205 861 180 90 922 702 757 777 613 417 61 951 288 814 201 617 296...

result:

ok ok, up to 667 steps were used

Extra Test:

score: 0
Extra Test Passed