CSES - HIIT Open 2016 - Results
Submission details
Task:Graph painting
Sender:Noname 01
Submission time:2016-05-28 12:59:41 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.04 sdetails
#2ACCEPTED0.05 sdetails
#3ACCEPTED0.11 sdetails

Code

// NONAME-01
#include <bits/stdc++.h>
using namespace std;
int n, m;
vector< vector<int> > nxt;
vector <int> col;
void Load()
{
cin >> n >> m;
nxt.resize(n);
int i;
for (i = 0; i < n; i++) nxt.resize(0);
for (i = 0; i < m; i++) {
int a, b;
cin >> a >> b;
a--;
b--;
nxt[a].push_back(b);
nxt[b].push_back(a);
}
}
void Solve()
{
int i, j;
col.resize(n);
col[0] = 0;
int a, b;
for (i = 1; i < n; i++) {
a = 0;
b = 0;
for (j = 0; j < (int)nxt[i].size();j++) {
int k = nxt[i][j];
if (k > i) continue;
if (col[k] == 0) a++;
else b++;
}
if (a > b) {
col[i] = 1;
} else {
col[i] = 0;
}
}
for (i = 0; i < n; i++) {
if ( col[i] == 0) cout << "R ";
else cout << "B ";
}
cout << "\n";
}
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int nt, tt;
cin >> nt;
for (tt = 0; tt < nt; tt++) {
Load();
Solve();
}
return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
100
7 1
2 5
8 28
2 7
...

correct output
B R B B B B R 
R B B R B R B B 
R R B B B B R R R B 
B B R B R B 
B B B R B R R B R 
...

user output
R R R R B R R 
R B R B R B R B 
R B R B R R R R B R 
R B R B R B 
R B B R R R B B R 
...

Test 2

Verdict: ACCEPTED

input
10
38 36
18 28
20 37
22 38
...

correct output
R R B R B R R R R R B B R B R ...

user output
R R R R R R R R R R B R R R R ...

Test 3

Verdict: ACCEPTED

input
1
100000 200000
89300 98492
33853 56822
92967 99427
...

correct output
R R R R B R R R B B B R B B B ...

user output
R R R R R R R R R R R R R R R ...