QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#319347 | #4829. Mark on a Graph | duongnc000 | 0 | 2ms | 4360kb | C++20 | 5.9kb | 2024-02-02 14:45:22 | 2024-02-02 14:45:22 |
answer
/*
#pragma GCC optimize("Ofast,unroll-loops")
#pragma GCC target("avx2,fma,bmi,bmi2,sse4.2,popcnt,lzcnt")
*/
#include <bits/stdc++.h>
#define taskname ""
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define i64 long long
#define pb push_back
#define ff first
#define ss second
#define isz(x) (int)x.size()
using namespace std;
const int mxN = 2e5 + 5;
const int mod = 1e9 + 7;
const i64 oo = 1e18;
// https://i11www.iti.kit.edu/extra/publications/sw-fclt-05_t.pdf
// O(n + m * sqrt(m)) process() calls for graphs without loop or multiedges
void find_3_cycles(int n, const vector<array<int, 2>> &edge, auto process){
int m = (int)edge.size();
vector<int> deg(n), order, pos(n);
vector<vector<int>> appear(m + 1), adj(n), found(n);
for(auto [u, v]: edge) ++ deg[u], ++ deg[v];
for(auto u = 0; u < n; ++ u) appear[deg[u]].push_back(u);
for(auto d = m; d >= 0; -- d) order.insert(order.end(), appear[d].begin(), appear[d].end());
for(auto i = 0; i < n; ++ i) pos[order[i]] = i;
for(auto i = 0; i < m; ++ i){
int u = pos[edge[i][0]], v = pos[edge[i][1]];
adj[u].push_back(v), adj[v].push_back(u);
}
for(auto u = 0; u < n; ++ u) for(auto v: adj[u]) if(u < v){
for(auto i = 0, j = 0; i < (int)found[u].size() && j < (int)found[v].size(); ){
if(found[u][i] == found[v][j]){
process(order[u], order[v], order[found[u][i]]);
++ i, ++ j;
}
else if(found[u][i] < found[v][j]) ++ i;
else ++ j;
}
found[v].push_back(u);
}
}
template<bool Enable_small_to_large = true>
struct disjoint_set{
int n, _classes;
vector<int> p;
disjoint_set(int n): n(n), _classes(n), p(n, -1){ }
int make_set(){
p.push_back(-1);
++ _classes;
return n ++;
}
int classes() const{
return _classes;
}
int root(int u){
return p[u] < 0 ? u : p[u] = root(p[u]);
}
bool share(int a, int b){
return root(a) == root(b);
}
int size(int u){
return -p[root(u)];
}
bool merge(int u, int v){
u = root(u), v = root(v);
if(u == v) return false;
-- _classes;
if constexpr(Enable_small_to_large) if(p[u] > p[v]) swap(u, v);
p[u] += p[v], p[v] = u;
return true;
}
bool merge(int u, int v, auto act){
u = root(u), v = root(v);
if(u == v) return false;
-- _classes;
bool swapped = false;
if constexpr(Enable_small_to_large) if(p[u] > p[v]) swap(u, v), swapped = true;
p[u] += p[v], p[v] = u;
act(u, v, swapped);
return true;
}
void clear(){
_classes = n;
fill(p.begin(), p.end(), -1);
}
vector<vector<int>> group_up(){
vector<vector<int>> g(n);
for(auto i = 0; i < n; ++ i) g[root(i)].push_back(i);
g.erase(remove_if(g.begin(), g.end(), [&](auto &s){ return s.empty(); }), g.end());
return g;
}
};
int n, m;
vector<array<int, 2>> G;
map<int, int> adj[1005];
int indeg[1005], av[1005];
void add_edge(int u, int v) {
++indeg[u], ++indeg[v];
adj[u][v]++, adj[v][u]++;
}
bool check(vector<int> &pos) {
for (int i = 0; i < isz(pos); ++i) {
for (int j = i + 1; j < isz(pos); ++j) {
if (adj[pos[i]].find(pos[j]) == adj[pos[i]].end())
return true;
}
}
return false;
}
void solve() {
cin >> n >> m;
disjoint_set dsu(n);
iota(av + 1, av + n + 1, 1);
for (int i = 1; i <= m; ++i) {
int u, v;
cin >> u >> v;
add_edge(u, v);
// dsu.merge(u, v);
// G.push_back({u, v});
}
sort(av + 1, av + n + 1, [&](int x, int y) {
return indeg[x] > indeg[y];
});
int cnt = 0;
vector<int> pos;
vector<pair<int, int>> op;
for (int i = 1; i <= 8; ++i) if (indeg[av[i]] % 2) {
pos.emplace_back(av[i]);
}
while (isz(pos) > 1 and check(pos)) {
int woo1 = -1, woo2 = -1;
for (int i = 0; i < isz(pos); ++i)
for (int j = i + 1; j < isz(pos); ++j)
if (adj[pos[i]].find(pos[j]) == adj[pos[i]].end())
woo1 = i, woo2 = j;
add_edge(pos[woo1], pos[woo2]);
op.emplace_back(pos[woo1], pos[woo2]);
vector<int> npos;
for (int i = 0; i < isz(pos); ++i) if (i != woo1 and i != woo2) npos.emplace_back(pos[i]);
pos = npos;
}
for (int idx : pos) {
for (int j = n; j >= 1; --j) if (adj[idx].find(av[j]) == adj[idx].end()) {
add_edge(av[j], idx);
op.emplace_back(av[j], idx);
break;
}
}
if (isz(op) == 0) {
cout << "ok" << endl;
return;
}
cout << "mark" << endl << isz(op) << endl;
for (auto [u, v] : op) cout << u << " " << v << endl;
// for (int i = 0; i < 10; ++i) cout << indeg[av[i + 1]] << " \n"[i == 9];
// assert(*max_element(indeg, indeg + n) <= 5);
// cout << dsu.classes() << endl;
// find_3_cycles(n, G, process);
}
signed main() {
#ifndef CDuongg
if(fopen(taskname".inp", "r"))
assert(freopen(taskname".inp", "r", stdin)), assert(freopen(taskname".out", "w", stdout));
#else
freopen("bai3.inp", "r", stdin);
freopen("bai3.out", "w", stdout);
auto start = chrono::high_resolution_clock::now();
#endif
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int t = 1; //cin >> t;
while(t--) solve();
#ifdef CDuongg
auto end = chrono::high_resolution_clock::now();
cout << "\n"; for(int i = 1; i <= 100; ++i) cout << '=';
cout << "\nExecution time: " << chrono::duration_cast<chrono::milliseconds> (end - start).count() << "[ms]" << endl;
cout << "Check array size pls sir" << endl;
#endif
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 2ms
memory: 4172kb
input:
1000 3560 603 151 415 20 102 569 895 552 678 734 24 614 689 518 440 223 751 919 223 433 711 551 502 634 706 583 812 501 514 535 780 751 720 530 532 384 888 139 864 791 292 675 171 881 30 592 464 557 280 299 654 650 894 335 250 532 792 10 83 969 118 771 579 300 852 983 243 940 957 939 817 889 911 319...
output:
mark 2 108 611 733 310
input:
1000 3562 623 554 396 217 231 662 330 865 163 684 50 833 648 137 781 1000 184 217 844 383 831 643 48 355 279 904 167 379 278 494 707 250 451 567 209 500 64 422 253 49 663 368 405 170 292 988 831 639 999 596 125 95 102 440 827 437 882 125 932 719 264 339 721 655 102 790 267 793 201 155 186 576 898 36...
output:
ok
result:
ok all right
Test #2:
score: 100
Accepted
time: 1ms
memory: 4088kb
input:
1000 2000 457 335 160 497 464 992 892 255 853 3 308 301 970 363 541 299 89 418 425 128 626 827 603 854 484 874 755 295 607 483 798 552 356 850 320 357 254 940 675 901 168 525 301 636 520 555 773 910 343 701 889 966 218 529 909 950 71 64 682 284 424 138 721 792 670 544 386 72 654 909 725 235 592 437 ...
output:
mark 1 861 727
input:
1000 2001 181 711 426 320 503 386 377 826 97 233 231 792 993 1 403 152 381 532 554 117 541 72 291 182 962 916 765 649 252 673 756 751 529 178 731 827 39 689 541 268 139 620 379 851 727 755 622 628 341 884 813 945 564 74 863 90 99 543 25 858 298 450 411 738 758 705 770 529 414 78 838 977 956 965 50 9...
output:
ok
result:
ok all right
Test #3:
score: 100
Accepted
time: 2ms
memory: 4308kb
input:
1000 5000 449 632 597 26 701 322 249 190 411 770 666 596 989 995 112 861 445 818 544 659 24 680 739 593 344 439 193 932 600 526 574 869 216 918 716 793 259 686 555 993 255 578 659 271 328 524 729 672 39 771 241 866 27 790 417 109 56 403 338 299 387 232 280 306 589 794 833 419 900 802 54 697 539 807 ...
output:
mark 4 396 350 593 202 566 748 869 539
input:
1000 5004 258 506 563 742 458 36 208 588 178 845 559 170 361 150 350 788 619 34 977 914 578 699 634 106 213 340 156 570 83 564 647 61 128 762 345 143 821 596 976 995 155 835 60 376 334 471 116 10 467 792 494 48 464 286 956 247 726 21 405 143 612 419 42 981 693 70 407 899 285 697 256 532 649 530 240 ...
output:
ok
result:
ok all right
Test #4:
score: 100
Accepted
time: 2ms
memory: 4196kb
input:
1000 3156 347 398 792 278 754 442 413 757 391 130 636 625 207 437 81 415 47 974 887 779 524 619 379 894 868 594 653 919 29 117 123 867 632 505 648 147 130 420 495 876 637 659 882 348 462 878 282 646 398 525 419 224 926 448 305 934 855 570 396 345 774 918 336 123 502 491 984 783 845 142 790 594 754 4...
output:
mark 2 881 386 115 418
input:
1000 3158 540 769 439 852 901 654 845 121 154 787 213 734 215 143 159 469 266 787 123 439 16 909 438 346 426 843 150 447 841 721 811 101 642 355 125 480 437 578 775 174 865 693 418 309 399 885 287 402 786 474 456 465 441 28 766 866 754 994 290 668 225 18 34 879 394 426 639 127 836 887 748 615 334 74...
output:
ok
result:
ok all right
Test #5:
score: 100
Accepted
time: 2ms
memory: 4236kb
input:
1000 3433 634 21 789 966 541 959 213 381 366 781 107 649 747 122 336 869 222 648 833 972 929 524 712 524 744 525 568 679 634 163 901 501 56 518 128 587 720 117 208 439 860 85 852 168 934 947 34 858 520 568 408 464 232 432 999 504 71 982 957 372 570 436 281 309 410 405 521 275 554 589 4 707 498 148 5...
output:
mark 3 413 371 631 284 214 797
input:
1000 3436 901 246 554 90 136 682 837 660 902 898 735 811 311 18 376 42 783 207 563 565 521 669 570 257 607 750 514 631 669 217 968 109 409 300 341 848 451 211 40 861 925 307 776 535 263 182 681 31 271 892 578 188 655 139 716 5 131 880 505 114 971 966 544 441 395 188 42 410 628 82 661 344 637 909 163...
output:
ok
result:
ok all right
Test #6:
score: 100
Accepted
time: 2ms
memory: 4192kb
input:
1000 3057 985 223 432 967 405 822 845 650 893 646 599 718 754 710 333 73 392 355 895 496 200 562 816 36 457 953 9 623 889 662 482 590 249 29 689 694 185 990 285 690 12 323 611 560 903 722 476 86 105 666 441 193 695 640 36 617 840 42 80 527 977 539 606 150 384 585 784 648 919 360 157 532 568 98 995 8...
output:
mark 2 31 485 134 394
input:
1000 3059 29 48 868 224 13 300 440 290 294 719 506 107 14 443 241 921 842 25 722 560 545 503 921 572 590 27 132 790 42 458 25 364 340 372 193 518 42 660 317 815 977 433 761 633 95 970 450 626 333 585 971 732 337 771 63 271 485 551 239 366 440 279 189 644 115 949 138 624 22 995 495 460 191 934 578 21...
output:
ok
result:
ok all right
Test #7:
score: 100
Accepted
time: 2ms
memory: 4192kb
input:
1000 3085 484 405 841 443 661 315 392 941 355 558 523 394 773 929 673 840 5 707 255 610 744 58 301 794 505 33 668 533 787 945 747 810 803 115 340 900 791 909 596 418 129 491 460 698 156 233 664 502 231 465 795 486 829 102 608 212 253 344 419 557 100 421 321 793 207 302 544 479 33 916 736 129 6 156 9...
output:
mark 3 305 664 581 888 729 877
input:
1000 3088 821 665 956 248 417 787 734 95 330 953 826 533 888 479 883 619 174 625 554 613 160 480 570 952 158 636 76 223 518 617 743 937 685 728 427 52 568 778 474 293 247 977 332 533 773 219 31 664 108 860 640 186 907 603 436 948 289 874 710 197 831 963 453 369 44 843 772 765 347 200 330 595 268 65 ...
output:
ok
result:
ok all right
Test #8:
score: 100
Accepted
time: 2ms
memory: 4076kb
input:
1000 4289 963 66 959 467 930 83 419 699 731 948 702 583 699 245 636 721 859 551 377 251 90 889 286 843 908 47 864 979 223 948 269 684 85 579 162 376 414 255 602 884 65 132 842 907 488 360 553 898 649 249 253 711 675 632 629 446 708 413 819 511 512 113 189 76 242 464 828 261 440 737 643 389 75 907 49...
output:
mark 2 632 783 611 963
input:
1000 4291 332 749 188 54 898 992 302 493 586 861 246 17 154 311 838 229 501 316 209 227 784 338 987 999 510 121 91 866 757 8 994 36 972 83 477 824 924 603 496 756 320 32 453 521 433 628 937 526 18 740 686 723 784 591 510 698 317 920 838 799 447 186 474 789 845 588 71 110 337 257 492 670 388 957 527 ...
output:
ok
result:
ok all right
Test #9:
score: 100
Accepted
time: 2ms
memory: 4360kb
input:
1000 4763 544 167 316 76 78 841 699 1 645 745 827 262 568 545 595 81 924 561 108 253 397 626 142 967 613 397 723 633 711 259 363 249 5 436 165 88 178 463 734 529 195 324 135 41 1000 136 215 967 371 638 588 753 542 909 633 106 537 852 111 232 303 500 892 461 868 300 772 667 40 172 956 575 613 163 933...
output:
mark 3 425 983 214 509 571 148
input:
1000 4766 450 16 910 74 103 774 597 624 185 948 625 965 921 271 347 329 156 57 747 193 936 135 594 591 22 837 259 918 762 516 500 479 444 148 161 857 680 705 58 379 897 116 415 90 917 70 78 971 976 767 429 673 66 526 667 621 847 589 37 148 173 872 965 793 396 746 688 388 214 818 820 306 687 862 93 2...
output:
ok
result:
ok all right
Test #10:
score: 100
Accepted
time: 2ms
memory: 4304kb
input:
1000 4250 747 446 769 425 773 753 217 298 217 4 514 774 752 3 905 857 532 410 224 250 367 33 29 541 809 996 76 960 25 603 532 600 518 304 546 95 735 413 312 476 83 534 157 62 170 836 668 976 244 557 972 860 828 170 975 468 677 714 800 170 530 191 216 930 242 728 318 505 269 162 579 963 769 822 171 4...
output:
mark 1 385 5
input:
1000 4251 112 370 102 703 776 233 835 409 598 303 590 999 320 874 639 193 378 512 447 83 308 365 152 512 219 36 14 309 600 242 8 847 585 656 524 394 600 888 342 188 275 604 326 920 728 164 380 74 892 31 797 986 984 629 148 404 377 353 270 344 578 582 5 848 261 174 398 338 494 140 371 94 146 199 45 2...
output:
ok
result:
ok all right
Test #11:
score: 100
Accepted
time: 2ms
memory: 3992kb
input:
1000 3336 161 745 81 702 879 347 452 553 809 32 359 925 984 783 558 366 611 89 948 530 565 496 123 348 534 986 991 511 322 407 6 878 20 897 188 150 527 440 487 333 218 572 597 575 308 684 50 780 900 451 763 785 210 682 964 992 811 537 537 167 320 133 523 899 629 732 435 281 826 405 868 567 201 858 2...
output:
mark 3 688 704 947 565 299 359
input:
1000 3339 1000 599 660 343 299 936 161 358 202 191 992 338 525 621 413 164 826 432 770 154 958 394 351 519 438 440 13 58 172 928 599 991 576 685 373 644 213 220 957 810 730 989 499 533 153 420 59 986 693 608 502 808 359 289 179 82 812 370 239 65 30 932 236 674 723 854 766 261 356 736 840 984 434 921...
output:
ok
result:
ok all right
Test #12:
score: 100
Accepted
time: 2ms
memory: 4044kb
input:
1000 3482 910 881 481 989 349 262 963 679 970 752 651 210 86 339 724 310 765 410 118 619 662 351 568 148 292 61 136 385 997 772 210 735 816 310 698 649 581 313 414 280 92 872 965 925 35 930 813 29 617 210 854 940 486 479 412 644 660 623 126 85 664 327 459 165 266 113 108 206 686 660 918 536 173 366 ...
output:
mark 1 333 963
input:
1000 3483 732 216 26 72 633 812 543 565 128 60 104 532 597 504 46 473 87 574 575 144 496 698 646 382 613 317 6 890 739 307 680 811 384 394 455 148 487 770 851 666 52 549 160 733 544 682 624 866 877 240 674 630 256 803 812 625 840 631 346 963 959 707 767 843 220 573 594 935 616 825 391 131 744 173 61...
output:
ok
result:
ok all right
Test #13:
score: 100
Accepted
time: 1ms
memory: 3856kb
input:
1000 2141 358 723 692 581 753 295 864 391 984 462 525 271 508 897 739 537 124 933 577 499 863 37 279 622 361 605 454 951 527 837 1 224 641 404 479 220 931 126 182 719 464 451 805 452 529 800 292 689 17 320 728 790 967 41 412 752 276 535 643 636 611 56 802 414 861 603 857 722 1000 584 435 118 266 392...
output:
mark 3 985 607 442 478 609 790
input:
1000 2144 482 327 721 271 324 265 542 340 774 998 33 221 882 886 960 447 898 211 433 35 745 399 692 986 422 376 816 821 561 879 414 613 27 223 38 338 152 849 453 625 98 796 7 425 257 760 824 441 680 49 476 761 585 315 907 925 938 131 30 914 491 113 788 961 489 597 710 34 409 587 623 686 967 308 948 ...
output:
ok
result:
ok all right
Test #14:
score: 100
Accepted
time: 1ms
memory: 3952kb
input:
1000 2950 244 361 694 442 547 577 545 866 488 207 888 997 263 45 850 200 30 927 195 510 274 582 467 158 664 667 880 573 522 986 736 375 206 326 999 940 875 609 151 161 602 673 664 200 827 579 12 190 300 249 95 502 951 317 669 243 350 841 692 572 619 302 955 999 480 891 109 779 198 893 105 442 214 14...
output:
mark 2 252 154 651 170
input:
1000 2952 589 141 167 955 739 836 759 160 65 799 917 214 244 771 157 270 816 753 788 490 515 316 257 570 945 437 995 298 180 666 526 578 440 379 368 325 468 283 649 351 94 263 789 292 984 761 532 839 746 256 69 464 120 609 296 175 604 329 307 590 933 975 938 246 248 131 841 279 406 574 317 398 260 4...
output:
ok
result:
ok all right
Test #15:
score: 100
Accepted
time: 1ms
memory: 3876kb
input:
1000 2725 336 461 575 6 961 482 496 574 134 336 671 452 172 957 633 89 909 334 222 155 90 660 201 950 436 671 726 683 487 356 536 389 107 844 403 732 550 608 607 54 718 438 960 144 710 278 398 747 152 501 86 385 34 251 309 822 773 321 329 213 897 948 356 401 290 329 278 591 683 454 122 523 729 436 4...
output:
mark 1 160 401
input:
1000 2726 826 863 860 669 482 188 461 442 496 849 962 420 832 558 899 680 933 304 876 932 6 579 49 750 506 996 166 759 563 508 331 228 210 471 707 306 89 391 16 349 161 923 496 830 591 108 534 553 220 382 489 624 969 790 385 891 900 848 69 837 478 216 455 579 539 29 37 915 554 860 316 683 143 324 33...
output:
ok
result:
ok all right
Test #16:
score: 100
Accepted
time: 0ms
memory: 4176kb
input:
1000 2812 357 725 462 948 927 875 21 284 52 197 457 876 744 315 990 255 660 522 51 971 392 275 736 77 131 216 581 438 495 271 965 111 376 89 824 363 628 13 33 585 836 144 791 404 916 588 668 243 960 335 505 368 744 264 332 893 65 320 205 81 929 44 135 224 306 351 938 505 70 927 825 634 161 492 434 1...
output:
mark 3 828 972 909 895 643 187
input:
1000 2815 559 677 157 134 295 218 65 463 514 383 94 308 900 81 922 400 176 977 59 798 403 802 873 525 143 629 187 152 804 592 99 405 353 321 597 445 286 171 788 328 153 207 424 703 446 391 83 268 844 146 635 237 740 524 279 608 898 307 312 394 672 353 954 603 224 156 172 296 897 177 214 437 205 736 ...
output:
ok
result:
ok all right
Test #17:
score: 100
Accepted
time: 1ms
memory: 4148kb
input:
1000 2616 518 38 164 144 301 140 711 11 36 636 443 779 107 901 467 922 759 675 229 276 467 880 975 435 382 460 238 663 639 927 74 953 777 326 689 944 152 237 501 789 795 889 95 376 390 401 279 64 520 803 273 292 333 454 202 485 860 54 872 641 101 951 236 726 464 847 992 656 576 565 739 176 562 327 2...
output:
mark 1 301 990
input:
1000 2617 962 440 336 738 42 206 724 449 510 323 391 928 895 796 138 853 555 911 223 916 131 55 763 978 492 132 887 251 962 647 947 939 722 681 229 720 216 949 793 266 394 854 600 972 87 491 530 541 461 500 892 139 78 124 959 230 718 623 22 222 780 914 63 341 610 950 321 335 326 697 232 202 137 154 ...
output:
ok
result:
ok all right
Test #18:
score: 100
Accepted
time: 2ms
memory: 4076kb
input:
1000 4792 659 787 666 143 711 116 742 958 604 434 293 882 175 28 557 753 106 808 527 599 942 249 843 109 174 76 429 255 415 489 463 540 878 235 688 87 629 402 927 418 704 734 886 463 702 992 570 370 492 865 795 889 638 594 887 203 732 896 610 492 960 422 44 255 442 448 426 697 862 351 318 277 783 22...
output:
mark 3 35 592 46 588 182 548
input:
1000 4795 72 88 722 243 805 260 50 598 295 877 373 83 715 329 176 340 196 387 956 159 2 871 737 903 500 615 513 232 167 490 533 887 426 406 375 107 492 552 565 754 733 70 357 489 934 43 447 256 420 199 863 879 144 740 952 343 550 612 706 778 30 629 555 349 402 697 98 849 117 838 528 562 486 627 454 ...
output:
ok
result:
ok all right
Test #19:
score: 100
Accepted
time: 2ms
memory: 4248kb
input:
1000 3724 513 194 958 159 936 285 493 34 668 957 824 152 450 421 92 170 416 782 546 100 698 433 299 741 261 975 661 408 4 927 789 856 52 784 541 618 99 780 527 957 618 74 440 321 839 496 360 484 71 21 149 302 25 505 240 587 584 736 490 934 817 867 682 287 882 528 985 852 201 46 254 112 862 582 379 3...
output:
mark 2 824 979 7 377
input:
1000 3726 257 545 712 740 457 204 367 941 782 667 81 818 469 561 177 262 441 657 304 93 514 298 911 503 97 323 239 357 717 651 795 975 480 974 340 32 920 508 683 106 239 216 956 462 6 120 90 140 857 17 938 109 414 946 284 921 858 805 82 635 13 349 966 380 301 968 922 45 175 703 472 495 603 561 479 1...
output:
ok
result:
ok all right
Test #20:
score: 100
Accepted
time: 2ms
memory: 3968kb
input:
1000 4188 106 174 116 750 197 421 387 311 48 148 296 628 755 929 804 267 341 16 263 676 486 178 334 256 639 453 183 206 497 528 911 457 854 258 104 922 931 576 725 214 300 460 149 847 754 657 670 983 525 366 475 667 680 376 676 126 929 766 437 821 646 717 578 151 885 981 394 105 264 225 429 390 502 ...
output:
mark 2 877 158 262 654
input:
1000 4190 124 365 552 777 351 939 750 527 559 920 160 76 525 292 753 349 4 209 95 116 435 788 603 700 789 522 380 280 678 489 882 778 312 223 866 738 970 965 895 279 578 808 931 659 909 193 69 249 426 907 695 105 480 686 540 109 387 580 774 301 679 166 131 3 840 645 388 479 300 367 463 209 747 514 6...
output:
ok
result:
ok all right
Test #21:
score: 100
Accepted
time: 2ms
memory: 4216kb
input:
1000 3236 622 762 548 197 457 126 655 978 275 215 472 112 762 998 649 242 890 339 337 1 169 283 365 486 584 324 988 887 406 500 62 591 512 839 76 251 479 635 485 217 961 204 934 8 621 40 374 227 1 403 644 72 758 370 436 494 174 341 770 80 421 125 151 211 405 389 514 637 808 815 131 762 647 518 804 7...
output:
mark 2 642 415 437 247
input:
1000 3238 797 806 528 715 234 299 167 268 91 607 239 305 483 502 105 972 407 882 716 543 193 108 65 459 748 25 818 750 583 966 540 761 766 286 705 839 816 418 582 483 325 788 599 451 14 978 269 7 339 712 547 186 542 367 779 742 95 353 966 162 394 330 984 565 392 431 991 835 860 208 963 181 768 112 8...
output:
ok
result:
ok all right
Test #22:
score: 100
Accepted
time: 2ms
memory: 4024kb
input:
1000 3299 693 455 906 758 704 271 639 392 910 445 984 43 821 447 3 475 929 500 879 29 243 657 602 744 974 96 879 79 225 9 868 993 115 636 701 248 995 83 781 441 995 320 766 534 432 827 65 632 873 392 231 943 502 170 856 584 368 665 391 797 734 568 538 613 539 984 505 285 965 253 446 107 605 681 216 ...
output:
mark 1 873 300
input:
1000 3300 938 126 741 12 701 985 569 78 178 433 484 395 427 549 290 451 575 856 548 508 707 311 148 530 17 91 199 951 318 390 319 381 131 633 51 932 118 628 382 567 994 445 136 674 735 333 294 209 938 759 242 352 452 987 550 993 819 177 358 391 308 650 407 1 69 655 961 185 157 845 260 691 263 603 81...
output:
ok
result:
ok all right
Test #23:
score: 100
Accepted
time: 2ms
memory: 4012kb
input:
1000 3482 45 265 363 58 385 372 365 256 659 227 700 636 954 356 708 312 24 144 103 367 797 394 779 615 596 57 546 439 622 318 344 724 27 792 286 475 286 469 581 321 191 79 457 80 357 577 559 587 63 234 982 665 838 402 931 320 724 796 645 275 254 812 283 710 75 269 991 914 888 557 214 416 316 465 197...
output:
mark 2 696 316 809 361
input:
1000 3484 186 288 136 751 656 288 737 914 968 582 937 936 522 693 394 658 489 87 885 210 107 17 793 493 378 263 170 32 804 638 982 141 126 150 272 1000 652 173 753 791 341 612 574 443 467 249 562 979 66 821 285 365 401 726 402 426 372 73 945 443 347 349 193 687 512 847 957 589 14 999 824 202 971 303...
output:
ok
result:
ok all right
Test #24:
score: 100
Accepted
time: 1ms
memory: 3900kb
input:
1000 2311 97 580 515 270 609 837 243 284 715 189 980 486 853 479 235 7 253 300 207 583 282 612 456 80 486 497 503 404 74 701 64 172 583 794 570 655 901 25 14 568 485 218 621 50 253 26 433 784 533 215 134 695 278 364 879 983 690 952 198 197 725 421 95 464 927 999 104 71 752 252 553 356 187 952 38 859...
output:
mark 2 319 546 690 7
input:
1000 2313 560 909 709 462 981 771 103 15 856 803 279 712 26 148 272 251 623 383 651 267 822 19 540 307 611 457 599 803 286 419 116 715 806 319 146 645 653 181 6 638 58 391 635 38 250 771 288 172 46 662 674 878 366 359 919 307 340 180 226 825 185 725 326 394 310 993 97 654 431 282 690 810 953 231 72 ...
output:
ok
result:
ok all right
Test #25:
score: 100
Accepted
time: 2ms
memory: 4048kb
input:
1000 3896 460 688 426 709 610 203 65 902 606 471 519 789 275 370 86 879 786 822 601 948 312 884 115 372 100 491 967 601 104 750 411 830 571 626 201 132 175 126 678 756 610 712 267 770 853 475 406 479 485 471 479 953 156 968 785 918 61 114 348 147 659 495 709 716 248 599 984 20 728 726 859 759 681 10...
output:
mark 3 712 590 65 814 600 224
input:
1000 3899 777 645 989 992 950 856 367 440 862 751 586 654 805 76 622 916 717 708 976 697 127 814 391 707 98 374 268 334 487 641 932 768 715 824 365 80 678 116 92 707 560 544 626 780 957 689 738 774 457 70 411 311 251 78 707 982 637 350 172 975 978 918 822 740 729 508 965 49 977 236 390 443 7 339 696...
output:
ok
result:
ok all right
Test #26:
score: 100
Accepted
time: 2ms
memory: 3988kb
input:
1000 3891 701 522 952 922 356 456 249 391 128 593 9 524 661 405 984 460 440 470 639 699 782 189 537 74 184 399 888 710 975 120 475 924 602 492 200 577 978 478 611 758 886 262 404 313 44 559 170 35 749 501 848 364 6 401 723 549 110 186 281 506 52 379 84 255 755 196 824 136 985 230 523 682 826 823 560...
output:
mark 1 451 613
input:
1000 3892 166 892 271 524 179 602 863 512 691 720 151 418 393 11 74 597 783 686 59 590 907 210 52 995 144 676 482 271 885 203 696 592 843 72 447 366 829 808 138 630 892 897 784 741 513 927 520 69 153 48 919 7 994 76 714 369 21 677 613 230 579 229 326 239 783 513 869 959 51 81 429 269 963 488 562 656...
output:
ok
result:
ok all right
Test #27:
score: 100
Accepted
time: 2ms
memory: 4216kb
input:
1000 3265 924 167 3 999 663 583 890 496 619 193 641 842 720 966 650 470 975 552 309 965 968 739 223 474 41 188 279 73 663 940 438 173 385 280 113 178 896 270 15 956 456 196 291 323 392 622 180 781 469 950 685 672 633 436 562 153 407 796 209 630 750 874 190 614 400 306 560 935 235 777 500 785 378 332...
output:
mark 1 890 888
input:
1000 3266 249 519 458 457 540 32 240 766 492 761 117 462 202 629 879 615 827 985 699 178 724 250 818 648 213 576 679 970 810 452 923 61 777 506 775 543 606 295 597 130 185 663 281 849 523 181 135 784 646 320 459 153 940 472 749 19 59 174 856 125 936 889 729 275 853 433 84 733 190 20 531 648 916 291 ...
output:
ok
result:
ok all right
Test #28:
score: 100
Accepted
time: 2ms
memory: 4052kb
input:
1000 4070 7 484 881 280 807 812 167 913 190 699 784 415 747 45 424 328 414 997 461 463 499 437 173 675 71 525 195 736 428 593 560 602 235 557 91 265 580 422 522 212 50 326 784 938 787 256 963 883 896 902 228 953 997 406 724 753 202 646 93 118 187 777 841 254 573 651 198 821 89 615 124 443 622 120 58...
output:
mark 2 615 474 268 87
input:
1000 4072 370 139 188 415 372 852 788 793 945 841 145 964 33 131 250 810 410 234 106 136 702 46 594 861 934 406 972 967 951 669 868 713 722 81 619 522 598 759 509 796 687 279 905 218 196 536 839 223 502 324 978 610 701 635 816 708 865 594 151 808 985 787 470 624 647 42 907 618 712 958 580 999 418 62...
output:
ok
result:
ok all right
Test #29:
score: 100
Accepted
time: 2ms
memory: 3972kb
input:
1000 3135 679 441 832 386 95 753 472 452 550 725 334 216 547 305 556 805 250 217 546 555 109 827 884 984 297 80 660 821 807 403 301 250 489 275 256 342 841 435 290 873 771 188 76 424 261 377 793 458 945 925 593 432 527 275 971 222 646 49 284 713 3 37 313 181 314 122 257 969 765 89 759 537 273 857 38...
output:
mark 3 569 857 356 348 473 412
input:
1000 3138 853 905 930 978 599 172 751 672 290 682 417 18 349 839 845 328 546 996 821 864 531 931 596 247 445 58 326 396 245 651 994 672 129 922 540 352 229 502 777 608 571 489 762 234 762 310 463 959 708 610 114 333 692 710 414 891 805 646 461 590 140 246 947 227 689 589 185 650 76 803 297 204 802 1...
output:
ok
result:
ok all right
Test #30:
score: 100
Accepted
time: 2ms
memory: 4068kb
input:
1000 4200 448 409 48 552 204 139 701 128 189 761 181 385 118 653 471 26 968 195 976 473 19 907 837 969 942 346 489 372 710 765 648 339 527 477 990 60 125 276 56 249 110 276 864 906 796 39 940 90 91 628 37 667 25 886 550 150 657 438 553 447 682 141 77 926 647 290 139 792 167 696 965 705 898 787 644 6...
output:
mark 1 965 427
input:
1000 4201 968 760 481 311 737 157 459 517 444 654 5 31 742 400 704 149 684 109 445 81 203 188 635 609 494 745 15 377 363 510 95 432 787 720 17 219 506 389 623 645 166 745 703 771 411 534 689 451 577 838 390 31 935 967 974 802 654 788 1 605 910 38 438 62 195 25 585 513 356 892 660 750 391 77 792 718 ...
output:
ok
result:
ok all right
Test #31:
score: 100
Accepted
time: 2ms
memory: 3956kb
input:
1000 2992 768 684 51 962 667 28 959 894 941 636 131 80 869 468 666 543 262 235 241 428 893 839 546 428 445 949 262 763 896 402 205 644 192 650 177 921 29 488 758 527 657 817 447 872 708 323 759 927 146 982 654 973 787 923 132 163 219 813 822 144 515 188 327 452 542 32 455 122 610 461 203 303 27 766 ...
output:
mark 1 426 334
input:
1000 2993 616 170 73 730 965 129 122 687 290 656 912 801 626 765 386 934 458 328 176 924 709 629 69 158 122 468 313 124 268 742 568 605 707 435 940 583 568 212 560 970 11 89 638 643 576 721 791 136 103 665 929 691 479 799 308 202 41 131 403 41 126 410 974 331 179 615 49 274 765 648 839 360 776 768 5...
output:
ok
result:
ok all right
Test #32:
score: 100
Accepted
time: 2ms
memory: 4240kb
input:
1000 3891 9 226 167 799 23 992 910 468 750 904 219 238 571 266 968 429 700 878 3 169 108 842 736 273 789 322 446 694 869 533 491 744 526 730 190 941 610 146 853 939 824 574 399 326 116 328 687 960 68 460 222 735 64 875 462 627 955 990 5 890 393 852 651 134 683 374 99 609 854 927 357 84 81 455 963 69...
output:
mark 3 113 446 79 546 775 595
input:
1000 3894 716 120 237 524 942 158 904 476 472 974 395 567 554 770 171 466 354 952 856 880 63 655 558 916 676 726 694 274 482 625 511 69 506 483 39 251 188 345 577 723 897 850 451 186 929 684 663 284 951 404 700 54 305 543 913 986 432 509 89 230 554 365 805 281 946 830 449 738 992 204 950 454 364 344...
output:
ok
result:
ok all right
Test #33:
score: 100
Accepted
time: 2ms
memory: 4168kb
input:
1000 4839 721 823 946 252 516 492 460 116 126 30 65 344 134 175 802 407 634 405 799 22 808 599 433 519 711 519 30 52 457 114 41 136 668 659 743 511 155 962 436 847 671 472 549 352 688 699 167 943 467 460 292 150 801 507 559 497 890 264 565 630 672 272 15 90 869 979 853 947 119 690 501 832 285 936 34...
output:
mark 2 748 691 514 529
input:
1000 4841 800 134 340 606 350 152 340 305 211 441 138 152 81 206 507 445 539 758 88 240 320 922 446 717 960 462 426 602 346 130 916 587 884 555 244 621 113 349 251 600 579 897 204 373 745 71 653 70 453 446 489 591 861 213 223 176 195 282 974 300 222 443 663 422 98 110 965 32 308 422 507 862 13 630 1...
output:
ok
result:
ok all right
Test #34:
score: 100
Accepted
time: 1ms
memory: 4032kb
input:
1000 2034 672 408 42 15 81 165 720 365 17 795 12 752 996 718 504 262 723 214 405 139 860 837 659 586 873 356 313 426 115 550 620 942 287 815 539 518 574 531 642 428 696 628 532 548 164 371 382 434 397 223 880 826 667 805 851 587 387 528 731 649 88 252 738 790 871 539 763 587 116 818 394 292 267 380 ...
output:
mark 2 476 461 540 795
input:
1000 2036 799 679 394 589 293 291 886 17 918 45 963 138 629 333 62 449 262 902 198 337 441 885 832 480 879 43 535 609 179 92 998 866 369 919 531 797 67 777 101 662 550 327 933 781 987 369 733 238 264 5 851 401 248 2 44 338 467 229 940 577 539 212 365 305 835 794 603 977 422 435 114 357 687 345 691 2...
output:
ok
result:
ok all right
Test #35:
score: 100
Accepted
time: 1ms
memory: 3872kb
input:
1000 2063 152 651 423 569 82 188 469 837 791 178 513 272 388 461 658 688 805 167 400 258 947 616 803 244 645 636 14 715 355 166 504 598 366 78 611 886 284 952 429 434 138 349 423 520 910 760 263 499 282 106 62 525 765 673 425 636 767 432 378 368 406 797 777 46 728 638 337 259 720 551 32 418 893 567 ...
output:
mark 2 822 112 355 335
input:
1000 2065 633 351 738 242 538 623 211 734 780 392 353 621 755 217 897 316 626 116 969 274 557 287 999 413 388 737 165 242 256 193 590 961 878 920 483 10 811 39 388 767 770 10 812 44 914 916 740 430 24 33 701 454 38 121 390 928 677 946 462 209 171 995 783 948 405 939 805 612 828 257 687 272 698 639 7...
output:
ok
result:
ok all right
Test #36:
score: 100
Accepted
time: 1ms
memory: 4096kb
input:
1000 2015 735 560 841 818 908 373 452 621 415 440 682 740 879 685 769 787 78 247 709 376 529 131 838 689 352 699 233 54 420 43 675 580 893 682 570 960 886 186 627 685 824 527 285 801 381 190 545 638 803 864 673 545 675 471 539 857 97 929 72 835 176 54 336 134 674 134 214 557 720 131 480 947 842 993 ...
output:
mark 2 408 22 902 609
input:
1000 2017 993 4 360 856 779 621 710 639 420 391 115 711 290 414 510 384 408 30 420 826 463 886 834 539 31 169 631 297 39 310 847 819 947 372 133 331 542 891 184 651 82 69 782 743 595 673 844 465 166 536 687 110 337 228 855 375 752 799 55 156 169 856 119 776 112 573 702 178 611 786 140 80 440 481 596...
output:
ok
result:
ok all right
Test #37:
score: 100
Accepted
time: 1ms
memory: 4104kb
input:
1000 2088 740 777 753 465 620 85 563 425 462 640 660 818 506 223 161 680 212 736 832 801 881 351 708 787 743 371 325 128 840 456 832 721 671 768 711 676 967 36 297 541 201 236 348 983 794 78 832 912 840 569 671 857 357 781 263 615 505 283 760 980 279 519 225 480 387 569 407 877 132 284 863 892 600 9...
output:
mark 1 837 256
input:
1000 2089 844 675 171 431 209 992 619 393 773 525 382 871 973 220 253 593 728 868 653 990 120 49 308 647 580 613 266 401 614 514 314 139 780 410 553 776 747 674 654 930 295 490 613 312 971 584 917 528 270 701 337 387 215 166 550 731 716 672 600 998 94 68 354 745 980 307 342 961 962 774 874 707 770 8...
output:
ok
result:
ok all right
Test #38:
score: 0
Wrong Answer on the first run
input:
1000 2095 820 62 50 81 933 467 775 61 743 331 914 662 41 547 91 695 965 431 215 837 251 67 840 532 289 599 112 235 939 390 316 769 806 938 477 138 916 693 337 373 776 82 795 276 390 706 679 304 951 493 51 821 702 85 6 852 586 638 125 198 298 989 235 203 294 967 785 338 923 718 907 138 534 232 735 70...
output:
ok
input:
output:
result:
wrong answer Token "ok" doesn't correspond to pattern "mark"