QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#388275 | #8544. Colorful Graph 2 | ucup-team987# | TL | 2002ms | 7144kb | C++20 | 12.3kb | 2024-04-13 14:24:18 | 2024-04-13 14:24:19 |
Judging History
answer
/**
* date : 2024-04-13 15:24:08
* author : Nyaan
*/
#define NDEBUG
using namespace std;
// intrinstic
#include <immintrin.h>
#include <algorithm>
#include <array>
#include <bitset>
#include <cassert>
#include <cctype>
#include <cfenv>
#include <cfloat>
#include <chrono>
#include <cinttypes>
#include <climits>
#include <cmath>
#include <complex>
#include <cstdarg>
#include <cstddef>
#include <cstdint>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <deque>
#include <fstream>
#include <functional>
#include <initializer_list>
#include <iomanip>
#include <ios>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <random>
#include <set>
#include <sstream>
#include <stack>
#include <streambuf>
#include <string>
#include <tuple>
#include <type_traits>
#include <typeinfo>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>
// utility
namespace Nyaan {
using ll = long long;
using i64 = long long;
using u64 = unsigned long long;
using i128 = __int128_t;
using u128 = __uint128_t;
template <typename T>
using V = vector<T>;
template <typename T>
using VV = vector<vector<T>>;
using vi = vector<int>;
using vl = vector<long long>;
using vd = V<double>;
using vs = V<string>;
using vvi = vector<vector<int>>;
using vvl = vector<vector<long long>>;
template <typename T>
using minpq = priority_queue<T, vector<T>, greater<T>>;
template <typename T, typename U>
struct P : pair<T, U> {
template <typename... Args>
P(Args... args) : pair<T, U>(args...) {}
using pair<T, U>::first;
using pair<T, U>::second;
P &operator+=(const P &r) {
first += r.first;
second += r.second;
return *this;
}
P &operator-=(const P &r) {
first -= r.first;
second -= r.second;
return *this;
}
P &operator*=(const P &r) {
first *= r.first;
second *= r.second;
return *this;
}
template <typename S>
P &operator*=(const S &r) {
first *= r, second *= r;
return *this;
}
P operator+(const P &r) const { return P(*this) += r; }
P operator-(const P &r) const { return P(*this) -= r; }
P operator*(const P &r) const { return P(*this) *= r; }
template <typename S>
P operator*(const S &r) const {
return P(*this) *= r;
}
P operator-() const { return P{-first, -second}; }
};
using pl = P<ll, ll>;
using pi = P<int, int>;
using vp = V<pl>;
constexpr int inf = 1001001001;
constexpr long long infLL = 4004004004004004004LL;
template <typename T>
int sz(const T &t) {
return t.size();
}
template <typename T, typename U>
inline bool amin(T &x, U y) {
return (y < x) ? (x = y, true) : false;
}
template <typename T, typename U>
inline bool amax(T &x, U y) {
return (x < y) ? (x = y, true) : false;
}
template <typename T>
inline T Max(const vector<T> &v) {
return *max_element(begin(v), end(v));
}
template <typename T>
inline T Min(const vector<T> &v) {
return *min_element(begin(v), end(v));
}
template <typename T>
inline long long Sum(const vector<T> &v) {
return accumulate(begin(v), end(v), 0LL);
}
template <typename T>
int lb(const vector<T> &v, const T &a) {
return lower_bound(begin(v), end(v), a) - begin(v);
}
template <typename T>
int ub(const vector<T> &v, const T &a) {
return upper_bound(begin(v), end(v), a) - begin(v);
}
constexpr long long TEN(int n) {
long long ret = 1, x = 10;
for (; n; x *= x, n >>= 1) ret *= (n & 1 ? x : 1);
return ret;
}
template <typename T, typename U>
pair<T, U> mkp(const T &t, const U &u) {
return make_pair(t, u);
}
template <typename T>
vector<T> mkrui(const vector<T> &v, bool rev = false) {
vector<T> ret(v.size() + 1);
if (rev) {
for (int i = int(v.size()) - 1; i >= 0; i--) ret[i] = v[i] + ret[i + 1];
} else {
for (int i = 0; i < int(v.size()); i++) ret[i + 1] = ret[i] + v[i];
}
return ret;
};
template <typename T>
vector<T> mkuni(const vector<T> &v) {
vector<T> ret(v);
sort(ret.begin(), ret.end());
ret.erase(unique(ret.begin(), ret.end()), ret.end());
return ret;
}
template <typename F>
vector<int> mkord(int N, F f) {
vector<int> ord(N);
iota(begin(ord), end(ord), 0);
sort(begin(ord), end(ord), f);
return ord;
}
template <typename T>
vector<int> mkinv(vector<T> &v) {
int max_val = *max_element(begin(v), end(v));
vector<int> inv(max_val + 1, -1);
for (int i = 0; i < (int)v.size(); i++) inv[v[i]] = i;
return inv;
}
vector<int> mkiota(int n) {
vector<int> ret(n);
iota(begin(ret), end(ret), 0);
return ret;
}
template <typename T>
T mkrev(const T &v) {
T w{v};
reverse(begin(w), end(w));
return w;
}
template <typename T>
bool nxp(T &v) {
return next_permutation(begin(v), end(v));
}
// 返り値の型は入力の T に依存
// i 要素目 : [0, a[i])
template <typename T>
vector<vector<T>> product(const vector<T> &a) {
vector<vector<T>> ret;
vector<T> v;
auto dfs = [&](auto rc, int i) -> void {
if (i == (int)a.size()) {
ret.push_back(v);
return;
}
for (int j = 0; j < a[i]; j++) v.push_back(j), rc(rc, i + 1), v.pop_back();
};
dfs(dfs, 0);
return ret;
}
// F : function(void(T&)), mod を取る操作
// T : 整数型のときはオーバーフローに注意する
template <typename T>
T Power(T a, long long n, const T &I, const function<void(T &)> &f) {
T res = I;
for (; n; f(a = a * a), n >>= 1) {
if (n & 1) f(res = res * a);
}
return res;
}
// T : 整数型のときはオーバーフローに注意する
template <typename T>
T Power(T a, long long n, const T &I = T{1}) {
return Power(a, n, I, function<void(T &)>{[](T &) -> void {}});
}
template <typename T>
T Rev(const T &v) {
T res = v;
reverse(begin(res), end(res));
return res;
}
template <typename T>
vector<T> Transpose(const vector<T> &v) {
using U = typename T::value_type;
int H = v.size(), W = v[0].size();
vector res(W, T(H, U{}));
for (int i = 0; i < H; i++) {
for (int j = 0; j < W; j++) {
res[j][i] = v[i][j];
}
}
return res;
}
template <typename T>
vector<T> Rotate(const vector<T> &v, int clockwise = true) {
using U = typename T::value_type;
int H = v.size(), W = v[0].size();
vector res(W, T(H, U{}));
for (int i = 0; i < H; i++) {
for (int j = 0; j < W; j++) {
if (clockwise) {
res[W - 1 - j][i] = v[i][j];
} else {
res[j][H - 1 - i] = v[i][j];
}
}
}
return res;
}
} // namespace Nyaan
// bit operation
namespace Nyaan {
__attribute__((target("popcnt"))) inline int popcnt(const u64 &a) {
return __builtin_popcountll(a);
}
inline int lsb(const u64 &a) { return a ? __builtin_ctzll(a) : 64; }
inline int ctz(const u64 &a) { return a ? __builtin_ctzll(a) : 64; }
inline int msb(const u64 &a) { return a ? 63 - __builtin_clzll(a) : -1; }
template <typename T>
inline int gbit(const T &a, int i) {
return (a >> i) & 1;
}
template <typename T>
inline void sbit(T &a, int i, bool b) {
if (gbit(a, i) != b) a ^= T(1) << i;
}
constexpr long long PW(int n) { return 1LL << n; }
constexpr long long MSK(int n) { return (1LL << n) - 1; }
} // namespace Nyaan
// inout
namespace Nyaan {
template <typename T, typename U>
ostream &operator<<(ostream &os, const pair<T, U> &p) {
os << p.first << " " << p.second;
return os;
}
template <typename T, typename U>
istream &operator>>(istream &is, pair<T, U> &p) {
is >> p.first >> p.second;
return is;
}
template <typename T>
ostream &operator<<(ostream &os, const vector<T> &v) {
int s = (int)v.size();
for (int i = 0; i < s; i++) os << (i ? " " : "") << v[i];
return os;
}
template <typename T>
istream &operator>>(istream &is, vector<T> &v) {
for (auto &x : v) is >> x;
return is;
}
istream &operator>>(istream &is, __int128_t &x) {
string S;
is >> S;
x = 0;
int flag = 0;
for (auto &c : S) {
if (c == '-') {
flag = true;
continue;
}
x *= 10;
x += c - '0';
}
if (flag) x = -x;
return is;
}
istream &operator>>(istream &is, __uint128_t &x) {
string S;
is >> S;
x = 0;
for (auto &c : S) {
x *= 10;
x += c - '0';
}
return is;
}
ostream &operator<<(ostream &os, __int128_t x) {
if (x == 0) return os << 0;
if (x < 0) os << '-', x = -x;
string S;
while (x) S.push_back('0' + x % 10), x /= 10;
reverse(begin(S), end(S));
return os << S;
}
ostream &operator<<(ostream &os, __uint128_t x) {
if (x == 0) return os << 0;
string S;
while (x) S.push_back('0' + x % 10), x /= 10;
reverse(begin(S), end(S));
return os << S;
}
void in() {}
template <typename T, class... U>
void in(T &t, U &...u) {
cin >> t;
in(u...);
}
void out() { cout << "\n"; }
template <typename T, class... U, char sep = ' '>
void out(const T &t, const U &...u) {
cout << t;
if (sizeof...(u)) cout << sep;
out(u...);
}
struct IoSetupNya {
IoSetupNya() {
cin.tie(nullptr);
ios::sync_with_stdio(false);
cout << fixed << setprecision(15);
cerr << fixed << setprecision(7);
}
} iosetupnya;
} // namespace Nyaan
// debug
#ifdef NyaanDebug
#define trc(...) (void(0))
#else
#define trc(...) (void(0))
#endif
#ifdef NyaanLocal
#define trc2(...) (void(0))
#else
#define trc2(...) (void(0))
#endif
// macro
#define each(x, v) for (auto&& x : v)
#define each2(x, y, v) for (auto&& [x, y] : v)
#define all(v) (v).begin(), (v).end()
#define rep(i, N) for (long long i = 0; i < (long long)(N); i++)
#define repr(i, N) for (long long i = (long long)(N)-1; i >= 0; i--)
#define rep1(i, N) for (long long i = 1; i <= (long long)(N); i++)
#define repr1(i, N) for (long long i = (N); (long long)(i) > 0; i--)
#define reg(i, a, b) for (long long i = (a); i < (b); i++)
#define regr(i, a, b) for (long long i = (b)-1; i >= (a); i--)
#define fi first
#define se second
#define ini(...) \
int __VA_ARGS__; \
in(__VA_ARGS__)
#define inl(...) \
long long __VA_ARGS__; \
in(__VA_ARGS__)
#define ins(...) \
string __VA_ARGS__; \
in(__VA_ARGS__)
#define in2(s, t) \
for (int i = 0; i < (int)s.size(); i++) { \
in(s[i], t[i]); \
}
#define in3(s, t, u) \
for (int i = 0; i < (int)s.size(); i++) { \
in(s[i], t[i], u[i]); \
}
#define in4(s, t, u, v) \
for (int i = 0; i < (int)s.size(); i++) { \
in(s[i], t[i], u[i], v[i]); \
}
#define die(...) \
do { \
Nyaan::out(__VA_ARGS__); \
return; \
} while (0)
namespace Nyaan {
void solve();
}
int main() { Nyaan::solve(); }
//
using namespace Nyaan;
void q() {
ini(N, M);
vvi g(N);
set<pi> st;
rep(i, N) {
int j = (i + 1) % N;
g[i].push_back(j);
g[j].push_back(i);
st.insert(make_pair(i, j));
st.insert(make_pair(j, i));
}
{
vl u(M), v(M);
in2(u, v);
rep(t, M) {
int i = u[t], j = v[t];
g[i].push_back(j);
g[j].push_back(i);
st.insert(make_pair(i, j));
st.insert(make_pair(j, i));
}
}
rep(i, N) sort(all(g[i]));
vvi cv;
while (sz(st)) {
auto [u, v] = *begin(st);
st.erase(begin(st));
vi c{u};
for (int i = u, j = v; j != u;) {
c.push_back(j);
int z = lb(g[j], i);
int k = g[j][(z + 1) % sz(g[j])];
i = j, j = k;
st.erase(make_pair(i, j));
}
if (c[0] != 0 or c[1] != 1) cv.push_back(c);
}
trc(cv);
map<pi, vi> related;
rep(i, sz(cv)) {
rep(j, sz(cv[i])) {
int u = cv[i][j];
int v = cv[i][(j + 1) % sz(cv[i])];
related[minmax(u, v)].push_back(i);
}
}
vi used(sz(cv));
string ans(N, ' ');
queue<int> Q;
auto add = [&](int i) {
if (!used[i]) used[i] = 1, Q.push(i);
};
add(0);
while (sz(Q)) {
int i = Q.front();
Q.pop();
int b = 0, r = 0;
vi undefined;
each(j, cv[i]) {
if (ans[j] == 'B') b++;
if (ans[j] == 'R') r++;
if (ans[j] == ' ') undefined.push_back(j);
}
if (b) {
each(j, undefined) ans[j] = 'R';
}
if (r) {
each(j, undefined) ans[j] = 'B';
}
if (b == 0 and r == 0) {
rep(k, sz(undefined)) {
int j = undefined[k];
ans[j] = k % 2 ? 'B' : 'R';
}
}
rep(j, sz(cv[i])) {
int u = cv[i][j];
int v = cv[i][(j + 1) % sz(cv[i])];
each(ii, related[minmax(u, v)]) add(ii);
}
}
out(ans);
}
void Nyaan::solve() {
int t = 1;
in(t);
while (t--) q();
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 3528kb
input:
3 3 0 4 1 1 3 6 3 0 2 2 4 4 0
output:
RRB RRBB RRBRBB
result:
ok ok (3 test cases)
Test #2:
score: 0
Accepted
time: 442ms
memory: 3628kb
input:
100000 9 6 2 0 4 6 3 6 0 6 0 7 2 6 3 0 5 2 2 4 2 0 6 3 1 5 4 1 2 4 9 6 3 1 6 4 8 1 3 6 1 6 8 6 3 0 7 4 3 0 4 0 6 4 3 1 7 4 5 1 5 0 3 1 1 4 4 1 1 3 6 3 2 4 4 0 2 0 6 3 3 0 1 3 5 3 7 4 0 5 2 5 5 1 3 5 8 5 4 1 5 1 5 0 1 3 5 7 3 0 8 5 0 2 4 6 0 6 0 3 4 0 8 5 5 1 1 4 5 0 3 1 5 7 3 0 10 7 0 2 9 2 5 8 3 9 ...
output:
RRBRBRBBB RRB RRBRB RRBRBB RRBBRBBRB RRB RRBBBRB RRBBBBB RRBB RRBRBB RRBBRB RRBRBBB RRBBBBRB RRB RRBBBRBB RRBBBBRB RRB RRBRBBBBRB RRBBRBBB RRBRBRBBBB RRBBRBBRBB RRBBBRBRBB RRB RRBRBRB RRBBBB RRBBRBRB RRBB RRBRBBB RRBBBBRBRB RRBBBRB RRBRBRBB RRBBBB RRBRBB RRB RRB RRBBBBRBB RRBRBRB RRBBB RRBRBBRBBB RR...
result:
ok ok (100000 test cases)
Test #3:
score: 0
Accepted
time: 356ms
memory: 3688kb
input:
100000 8 4 5 3 5 1 6 1 3 1 7 4 5 0 4 1 4 0 3 1 4 0 8 1 4 7 3 0 3 0 8 1 1 3 3 0 9 4 6 0 3 0 3 1 5 0 7 0 6 2 4 2 0 4 7 3 0 3 0 4 1 3 5 1 3 0 10 4 6 8 5 2 1 5 5 3 5 1 1 4 3 0 9 3 5 0 8 6 6 0 3 0 5 2 1 3 1 4 9 0 6 1 4 2 8 1 1 3 5 0 8 2 3 1 6 1 5 1 3 0 8 3 3 0 7 4 7 5 7 2 5 3 1 3 10 3 8 0 0 3 8 5 9 4 3 0...
output:
RBBRBBRB RRBBBBB RBRB RBRBRBBB RRB RRB RRBBRBRB RRB RRBBBBBBB RRBRBRB RBRBBB RRBBBBB RBRBB RBBBBRBBRB RRBBB RRB RBRBRBBRB RRB RRBBB RRBRBRBRB RRBBRB RRBBRBRB RRBRB RBRBBBRB RBRBB RBRBBRBB RRBBBRB RBRBBBRRBB RBRBBRRBB RRBBBRBRB RBRBRB RRBRBRB RRB RRBBBBBBRB RRBBBB RRBRBBBRB RRBRB RBBBRBRBRB RRBRB RRB...
result:
ok ok (100000 test cases)
Test #4:
score: 0
Accepted
time: 1556ms
memory: 3708kb
input:
19452 78 75 50 52 61 64 19 21 21 27 52 54 75 5 47 58 15 13 47 66 69 71 66 68 33 36 27 32 15 17 66 60 74 7 63 61 41 13 45 71 30 28 68 71 18 13 13 42 47 55 76 1 19 32 61 66 5 2 22 24 74 71 42 44 59 47 66 46 26 21 49 52 56 58 54 47 52 48 21 25 19 41 10 42 45 74 48 54 39 41 41 18 75 6 39 33 33 37 31 28 ...
output:
RRBRBRBRBRBRBBRBRBRBBRBRBBBBBBRBRBBBRBBRBBRBBBRBRBRBBRBRBBRBRBBRBRBRBBBRBBBBBB RRBBBBRBBRBBBRBRBRBRBBRBBBRBBBRBBRBBRBRBRBRBRBBBBBRBBBBBRBBRBRBBRBBRBBBBRBRBBBBBBRBBBBRB RRBRBBRBBRBRBRBBRBRBBRBRBRBBBRBBRBBRBBBBRBBBBRBBBRBRBBRBRBBRBRBBRBRBBRBRBBRB RRBBRBBBRBRBRBRBBBBBRBBRBRBBRBRBBBRBBBRBBBRBRBBRBRBBRBR...
result:
ok ok (19452 test cases)
Test #5:
score: 0
Accepted
time: 1066ms
memory: 3900kb
input:
19457 72 56 1 70 0 70 2 70 19 69 64 42 34 32 55 57 22 68 54 48 26 28 41 23 13 10 68 21 62 59 29 26 53 51 30 41 41 38 15 7 66 64 3 15 23 42 47 54 9 7 6 4 47 42 64 22 67 22 17 3 37 35 23 64 30 38 59 61 24 41 70 17 19 70 30 32 17 19 19 21 14 7 2 17 29 24 6 15 69 21 62 55 9 14 16 3 25 29 15 4 53 50 35 3...
output:
RRBBBRBBBRBRBRBRBRBBRBRBRBRBBBBRBRBBRBRBRBRBBBBBRBBRBBBBRBBBRBRRBRBBBRBB RBBRBRBRBRBBRRRRRRBBRBBRBRBBBRBBBBBRBRBRBRB RRBRBRBRBRBRBRBRBBBRBBBRBBBBBBBRRRRBBBBRRRRRRBRBBRRRRRRRRRRRRRRRRRRRBRBB RBRBBRBBBRRRBRBBBBRBRRBRBBBBBBBRRRBBBRRBRRRRRRRRBBBBBBBRBBBRRBBBRBBRBRBBBRBBRBBBRBRRRRB RBBRRBBBBRBBBRBRBBRBRR...
result:
ok ok (19457 test cases)
Test #6:
score: 0
Accepted
time: 1733ms
memory: 4344kb
input:
2011 404 401 326 324 85 82 297 38 198 201 196 205 299 8 206 188 326 329 280 277 378 5 155 153 367 360 282 277 378 6 375 377 315 317 92 81 227 229 174 176 141 145 276 272 218 216 43 45 205 188 163 221 205 193 223 226 307 317 387 383 23 33 52 50 199 201 367 358 394 396 177 179 170 167 104 102 263 265 ...
output:
RRBBRBBRBBRBRBBBBRBBBBRBRBRBBRBBBRBRBBBRBBBRBBRBRBRBBBRBBBRBRBBRBRBBRBBBRBBBRBRBRBBRBRBBRBBBBRBBRBBBRBBBRBRBRBBRBRBBRBBBRBRBBBRBRBBBRBBRBBBBBRBRBBRBRBRBBRBBBBRBRBBRBRBBRBRBRBBBRBRBBRBRBBBRBRBBBBRBBRBBBRBBBRBBBBRBRBBBRBBBBBBRBRBBRBRBBRBRBBBBRBBRBRBRBBRBRBRBBRBBBRBBRBRBBBRBBBRBRBRBBRBBBBBBBRBBRBRBBRBB...
result:
ok ok (2011 test cases)
Test #7:
score: 0
Accepted
time: 1172ms
memory: 4300kb
input:
1958 908 775 369 374 638 644 308 310 686 758 596 593 432 410 730 732 556 476 356 354 711 742 149 144 582 609 714 716 895 667 831 837 37 10 17 13 880 882 453 457 266 269 297 301 577 113 114 576 115 166 716 727 130 163 708 745 337 317 250 303 712 714 893 668 344 351 319 322 276 264 107 109 567 466 415...
output:
RRBBBRRBBBRBRBBRRBRBRBRBBRBRBBBRBRRBRBBBRBRBBRRBBBBBRBBRBBRBBRBBRBRBBBRBBBRRBRBRBBBBBRBBBBBRBRBBRBBRBRRBBBRBBRBBRBRBBBBBBRBRBBBRBBRBBRBBRBRBBRBRBBRBBRBRBBBBBBRBRBBBBRBRBBRBBRBBRBRRBBRBBBBBBBRRBBBRBRBRRBRBRBRBBBRBBRBBBRBBBRBRBRBBRBBRBRBRBBBRBRBRBBRBRBRBRBBBBRBBBRRBBBRBBBBRBRBRBRBBRBBRBBRBRRBRBBBBRBBR...
result:
ok ok (1958 test cases)
Test #8:
score: 0
Accepted
time: 2002ms
memory: 7144kb
input:
204 1066 1063 466 462 569 566 239 241 125 134 418 422 147 142 99 103 380 305 100 103 589 585 336 315 126 134 176 1042 995 431 966 975 857 854 112 110 841 862 1018 1015 202 266 860 853 86 94 254 252 454 448 523 675 864 867 221 216 710 707 184 286 984 931 70 65 165 31 634 642 557 555 763 770 537 529 4...
output:
RRBBRBBRBBRBRBBRBRBBRBBRBBRBBRBRBBBRBBRBBRBRBRBBRBBRBRBRBRBBRBBBBBBRBRBRBRBRBRBRBBBRBBRBBRBRBRBBRBBRBBRBBRBBRBRBBRBBBRBBBRBBBBBBBBRBBBRBBBRBBRBBRBRBRBRBRBRBBRBRBBBRBBBRBRBRBRBRBBRBBBRBBBBRBRBRBRBRBRBRBBBBBBRBRBBBBRBBBBRBRBBRBRBRBBRBRBRBRBRBRBBRBRBBBRBRBBRBRBRBRBBBBBRBRBRBRBRBRBRBBRBBBRBRBBBBBRBBBRBR...
result:
ok ok (204 test cases)
Test #9:
score: 0
Accepted
time: 1319ms
memory: 6792kb
input:
203 2148 1719 1557 1562 1834 1826 661 646 1733 1747 668 670 1449 1497 256 254 1571 1569 1726 1701 142 135 1981 1979 1966 1992 2107 2104 1209 1196 752 895 2035 2033 621 618 3 6 2093 2110 437 479 641 643 566 519 640 628 626 678 1694 1726 1520 1522 1434 1430 1127 1130 2021 2014 1349 1347 378 383 1475 1...
output:
RRBBRRBBRBRRBBBRBBBBBRBRBBRRBBBBBBRBBBBRRBBBBBRBBRBRBRBRBRBBBRBBRBBBRBRBRBBBBBRBBRBBBRBRRBRBRRRBBRBBBBRBBRBRBBRBBRBBRBBRBRBBBBRBRBRBBRRBRBRBBRBBRBBBBRBRBBRRBBRBRBRBBBRBBBBRBBRBRBBBRBRRBRBRBBRBBBBRBBRRBRBBBRBBBRRBRBRBBBRBBRBBBBRBBBRBRBBBRBRBBRBBRBBBBBBBBRRBRBBBRRBRRBBRBBRBBBBRBBRBBRBBRBBBRBRBBBRBBRBR...
result:
ok ok (203 test cases)
Test #10:
score: -100
Time Limit Exceeded
input:
28 75972 75969 72982 72984 57195 57198 62938 62906 8473 8556 37842 37858 33380 33354 1503 1501 6490 6468 3231 3212 66806 66785 66178 66191 16644 16646 28283 28285 7797 7805 27304 50764 62274 62338 70175 70182 37760 37762 10872 10845 2554 2552 22131 22129 25754 25685 30543 30473 48058 48056 49029 490...
output:
RRBBBRBRBRBBBBRBRBBRBBBRBRBBBBRBRBBRBRBBRBRBBBRBRBBBRBRBBRBBRBRBRBBRBBRBRBBBBRBBBBRBRBBRBBRBRBBBRBBBBRBBBBBBRBRBBRBRBBBRBBBBBRBBBBBRBRBBRBRBBRBBRBBRBRBBBRBRBRBRBBBRBBBRBBBBRBBRBRBRBRBRBBRBBBBBRBRBRBBBBRBBRBBBRBBBBBRBRBRBBRBRBBBBRBRBBRBBRBBBBBBBRBRBBRBBBBRBRBBRBBRBBBRBBBBRBRBRBRBRBRBBRBRBBBBRBBBRBRBB...