QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#323943 | #4829. Mark on a Graph | hotboy2703 | 0 | 2ms | 4064kb | C++14 | 2.5kb | 2024-02-10 14:29:07 | 2024-02-10 14:29:08 |
answer
#include<bits/stdc++.h>
using namespace std;
using ll = long long;
using ull = unsigned long long;
using ld = long double;
#define pll pair <ll,ll>
#define fi first
#define se second
#define sz(a) (ll((a).size()))
#define BIT(mask,i) (((mask) >> (i))&1LL)
#define MASK(i) (1LL << (i))
ll n,m;
vector <ll> g[1010];
const ll check = 100;
int main(){
ios_base::sync_with_stdio(0);cin.tie(nullptr);cout.tie(nullptr);
cin>>n>>m;
vector <pll> edge;
for (ll i = 1;i <= m;i ++){
ll u,v;
cin>>u>>v;
g[u].push_back(v);
g[v].push_back(u);
edge.push_back({u,v});
}
ll cnt[check]={};
for (ll i = 1;i <= n;i ++){
if (sz(g[i])<check)cnt[sz(g[i])]^=1;
}
ll sum = 0;
for (ll i = 0;i < check;i ++)sum += cnt[i];
if (sum>5){
cout<<"mark\n";
vector <pll> del;
for (ll i = 0;i < 5;i ++){
ll best = sum;
pll nw = {0,0};
for (ll j = 1;j <= n;j ++){
for (auto x:g[j]){
vector <ll> dif({sz(g[j]),sz(g[j])-1,sz(g[x]),sz(g[x])-1});
for (auto y:dif){
sum -= cnt[y];
cnt[y]^=1;
sum += cnt[y];
}
if (sum < best){
best = sum;
nw = {j,x};
}
for (auto y:dif){
sum -= cnt[y];
cnt[y]^=1;
sum += cnt[y];
}
}
}
if (nw.fi != 0){
ll j,x;
j = nw.fi,x=nw.se;
del.push_back({j,x});
vector <ll> dif({sz(g[j]),sz(g[j])-1,sz(g[x]),sz(g[x])-1});
for (auto y:dif){
sum -= cnt[y];
cnt[y]^=1;
sum += cnt[y];
}
for (ll k = 0;k < sz(g[j]);k++){
if (g[j][k]==x){
g[j].erase(g[j].begin()+k);
}
}
for (ll k = 0;k < sz(g[x]);k++){
if (g[x][k]==j){
g[x].erase(g[x].begin()+k);
}
}
}
}
// cout<<sum<<'\n';
cout<<sz(del)<<'\n';
for (auto x:del)cout<<x.fi<<' '<<x.se<<'\n';
}
else{
cout<<"ok";
}
// cout<<even<<'\n';
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 2ms
memory: 3852kb
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 10 792 50 611
input:
1000 3558 397 554 396 217 262 376 854 911 576 186 50 833 648 137 232 739 184 286 383 34 83 863 355 48 930 18 167 755 283 323 250 209 722 567 667 500 215 595 253 49 479 363 51 964 263 292 831 175 375 735 125 692 102 654 437 827 125 457 932 719 551 339 353 721 379 167 163 430 272 547 620 759 360 898 5...
output:
ok
result:
ok all right
Test #2:
score: 100
Accepted
time: 1ms
memory: 3992kb
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 3 79
input:
1000 1999 105 843 163 659 960 813 529 342 135 173 449 19 419 602 64 899 529 532 945 554 541 273 787 159 864 438 668 192 257 673 711 293 297 178 40 577 398 371 541 489 620 456 292 845 727 413 860 613 111 348 945 853 810 564 636 485 99 263 25 430 450 309 586 656 962 856 770 884 78 885 724 896 965 261 ...
output:
ok
result:
ok all right
Test #3:
score: 100
Accepted
time: 1ms
memory: 3892kb
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 2 8 371 5 361
input:
1000 4998 551 533 737 842 283 299 171 208 385 340 170 427 361 374 747 56 476 544 914 977 689 276 45 106 858 748 442 843 152 387 647 865 396 945 345 377 684 171 287 864 835 341 749 138 380 529 242 116 792 467 953 215 286 464 364 956 458 321 279 533 419 141 599 543 98 228 74 870 246 797 256 532 649 53...
output:
ok
result:
ok all right
Test #4:
score: 100
Accepted
time: 1ms
memory: 4056kb
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 15 236 394 745
input:
1000 3154 496 759 439 344 654 432 845 300 870 154 602 290 215 366 162 159 266 723 439 406 59 672 433 346 494 605 36 150 660 986 811 609 455 941 168 812 685 111 174 108 761 5 873 75 885 980 515 287 966 786 456 849 28 31 766 386 512 754 668 533 636 974 919 879 841 423 529 710 836 178 597 884 741 563 2...
output:
ok
result:
ok all right
Test #5:
score: 100
Accepted
time: 1ms
memory: 3828kb
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 1 492 631
input:
1000 3432 246 901 837 301 774 416 660 342 337 898 735 811 560 790 885 457 903 783 899 730 437 344 853 310 607 750 235 514 669 184 109 13 300 103 341 848 446 656 233 861 957 638 258 511 505 99 713 117 331 892 632 946 856 655 879 5 318 15 7 157 671 107 19 431 632 515 844 42 403 916 661 513 895 6 846 6...
output:
ok
result:
ok all right
Test #6:
score: 100
Accepted
time: 1ms
memory: 4052kb
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 4 2 72 4 185 97 393 31 983
input:
1000 3053 48 645 325 243 13 391 875 433 864 902 719 835 465 222 976 752 40 969 93 939 71 263 976 625 159 279 790 346 42 530 364 235 663 570 851 701 262 927 114 47 274 984 449 761 380 294 455 626 114 749 636 554 783 717 595 71 485 867 711 366 925 268 129 530 795 94 903 310 148 22 44 552 151 798 495 6...
output:
ok
result:
ok all right
Test #7:
score: 100
Accepted
time: 1ms
memory: 3784kb
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 1 408 7 553 75 581
input:
1000 3082 983 919 959 2 417 787 734 974 726 955 514 995 888 479 531 883 165 287 613 327 160 751 570 447 309 54 76 136 893 757 719 775 77 875 368 56 568 778 293 474 667 977 533 570 773 219 845 928 188 155 640 785 211 247 678 978 289 391 968 617 963 120 369 649 843 44 877 765 826 347 595 856 879 370 3...
output:
ok
result:
ok all right
Test #8:
score: 100
Accepted
time: 2ms
memory: 3868kb
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 4 1 606 5 622 79 173 48 198
input:
1000 4285 334 519 869 787 893 534 413 493 135 198 757 630 268 311 838 783 782 202 717 145 338 726 913 999 698 510 888 401 371 118 941 426 479 83 708 600 603 733 496 756 985 711 580 453 847 433 937 293 18 141 723 45 591 427 613 659 583 317 229 838 490 641 474 595 182 659 682 110 931 274 424 186 852 9...
output:
ok
result:
ok all right
Test #9:
score: 100
Accepted
time: 2ms
memory: 3896kb
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 2 570 5 115 13 240
input:
1000 4760 491 979 131 467 220 793 624 556 275 833 625 783 147 3 440 545 156 743 617 710 686 895 591 474 759 837 789 971 891 38 524 500 604 444 857 515 252 309 969 522 536 313 636 90 578 370 912 94 261 767 787 841 803 78 648 298 847 744 148 479 872 341 149 585 396 746 909 388 726 116 680 162 38 539 5...
output:
ok
result:
ok all right
Test #10:
score: 0
Wrong Answer
time: 2ms
memory: 4064kb
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 2 1 999 70 954
input:
1000 4248 749 948 102 703 776 233 352 21 334 634 581 276 874 320 193 639 336 248 83 447 593 343 927 685 36 524 681 803 617 487 837 144 608 173 290 771 159 327 188 342 920 373 952 480 164 728 864 568 787 412 10 56 224 402 420 11 353 377 970 711 35 380 848 742 264 979 490 29 306 237 371 94 836 386 413...
output:
mark 0
result:
wrong answer Token "mark" doesn't correspond to pattern "ok"