QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#323890 | #4829. Mark on a Graph | hotboy2703 | 0 | 1ms | 3788kb | C++14 | 2.0kb | 2024-02-10 14:01:26 | 2024-02-10 14:01:26 |
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];
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[6]={};
for (ll i = 1;i <= n;i ++){
if (sz(g[i])<6)cnt[sz(g[i])]^=1;
}
if (cnt[0]+cnt[1]+cnt[2]+cnt[3]+cnt[4]!=0){
cout<<"mark\n";
vector <pll> del;
for (ll i = 0;i < 5;i ++){
ll sum = 0;
for (ll j = 1;j <= n;j ++)sum += sz(g[j])==i;
if (sum%2){
bool ok = 0;
for (ll j = 1;j <= n && !ok;j ++){
if (sz(g[j])==i+1){
for (auto x:g[j]){
if (sz(g[x])>i+1){
del.push_back({j,x});
for (ll k = 0;k < sz(g[j]);k++){
if (g[j][k]==x){
g[j].erase(g[j].begin()+k);
}
}
ok = 1;
break;
}
}
}
}
assert(ok);
}
}
// memset(cnt,0,sizeof cnt);
// for (ll i = 1;i <= n;i ++){
// if (sz(g[i])<6)cnt[sz(g[i])]^=1;
// }
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: 0
Wrong Answer
time: 1ms
memory: 3788kb
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 1 501 812
input:
1000 3559 626 128 295 222 563 601 534 909 257 682 833 706 155 524 656 841 286 184 383 294 259 86 771 532 355 37 755 167 484 763 209 250 693 401 209 500 243 369 380 521 363 479 676 977 920 112 831 175 688 93 125 692 654 102 757 70 440 449 733 87 956 373 137 600 749 219 267 793 201 155 975 583 557 937...
output:
mark 1 6 705
result:
wrong answer Token "mark" doesn't correspond to pattern "ok"