QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#726591 | #2549. King's Palace | maspy | AC ✓ | 133ms | 19712kb | C++23 | 13.2kb | 2024-11-09 03:16:26 | 2024-11-09 03:16:26 |
Judging History
answer
#line 2 "/home/maspy/library/my_template.hpp"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
using pi = pair<ll, ll>;
using vi = vector<ll>;
template <class T> using vc = vector<T>;
template <class T> using vvc = vector<vc<T>>;
template <class T> using vvvc = vector<vvc<T>>;
template <class T> using vvvvc = vector<vvvc<T>>;
template <class T> using vvvvvc = vector<vvvvc<T>>;
template <class T> using pq = priority_queue<T>;
template <class T> using pqg = priority_queue<T, vector<T>, greater<T>>;
#define vec(type, name, ...) vector<type> name(__VA_ARGS__)
#define VEC(type, name, size) \
vector<type> name(size); \
IN(name)
#define vv(type, name, h, ...) vector<vector<type>> name(h, vector<type>(__VA_ARGS__))
#define VV(type, name, h, w) \
vector<vector<type>> name(h, vector<type>(w)); \
IN(name)
#define vvv(type, name, h, w, ...) vector<vector<vector<type>>> name(h, vector<vector<type>>(w, vector<type>(__VA_ARGS__)))
#define vvvv(type, name, a, b, c, ...) \
vector<vector<vector<vector<type>>>> name(a, vector<vector<vector<type>>>(b, vector<vector<type>>(c, vector<type>(__VA_ARGS__))))
#define FOR(i, n) for (ll i = 0; (i) < (ll)(n); ++(i))
#define FOR3(i, m, n) for (ll i = (m); (i) < (ll)(n); ++(i))
#define FOR_R(i, n) for (ll i = (ll)(n)-1; (i) >= 0; --(i))
#define FOR3_R(i, m, n) for (ll i = (ll)(n)-1; (i) >= (ll)(m); --(i))
#define FORIN(x, A) for (auto&& x : A)
#define FOR_nCk(s, n, k) \
for (ll s = (1 << k) - 1, tmp_var = 0; s < (1 << n); \
tmp_var = s | (s - 1), s = (tmp_var + 1) | (((~tmp_var & -~tmp_var) - 1) >> (__builtin_ctz(s) + 1)))
#define FOR_SUB(t, s) for(ll t = s; t >= 0; t = (t==0 ? -1 : (t - 1) & s))
#define all(x) x.begin(), x.end()
#define elif else if
#define popcnt_int __builtin_popcount
#define popcnt __builtin_popcountll
#define eb emplace_back
#define mp make_pair
#define mt make_tuple
#define fi first
#define se second
#define SUM(v) accumulate(all(v), 0LL)
#define MIN(v) *min_element(all(v))
#define MAX(v) *max_element(all(v))
#define LB(c, x) distance((c).begin(), lower_bound(all(c), (x)))
#define UB(c, x) distance((c).begin(), upper_bound(all(c), (x)))
#define UNIQUE(x) sort(all(x)), x.erase(unique(all(x)), x.end())
template <class T> T ceil(T x, T y) {
assert(y >= 1);
return (x > 0 ? (x + y - 1) / y : x / y);
}
template <class T> T floor(T x, T y) {
assert(y >= 1);
return (x > 0 ? x / y : (x - y + 1) / y);
}
#define INT(...) \
int __VA_ARGS__; \
IN(__VA_ARGS__)
#define LL(...) \
ll __VA_ARGS__; \
IN(__VA_ARGS__)
#define STR(...) \
string __VA_ARGS__; \
IN(__VA_ARGS__)
#define CHR(...) \
char __VA_ARGS__; \
IN(__VA_ARGS__)
#define DBL(...) \
long double __VA_ARGS__; \
IN(__VA_ARGS__)
void scan(int &a) { cin >> a; }
void scan(long long &a) { cin >> a; }
void scan(char &a) { cin >> a; }
void scan(double &a) { cin >> a; }
void scan(long double &a) { cin >> a; }
void scan(string &a) { cin >> a; }
template <class T, class S> void scan(pair<T, S> &p) { scan(p.first), scan(p.second); }
template <class T> void scan(vector<T> &a) {for(auto &i : a) scan(i);}
template <class T> void scan(T &a) { cin >> a; }
void IN() {}
template <class Head, class... Tail> void IN(Head &head, Tail &...tail) {
scan(head);
IN(tail...);
}
vi s_to_vi(string S, char first_char='a'){
vi A(S.size());
FOR(i, S.size()){
A[i] = S[i] - first_char;
}
return A;
}
template <typename T, typename U>
ostream& operator<<(ostream& os, const pair<T, U>& A) {
os << A.fi << " " << A.se;
return os;
}
template <typename T>
ostream& operator<<(ostream& os, const vector<T>& A) {
for (size_t i = 0; i < A.size(); i++) {
if(i) os << " ";
os << A[i];
}
return os;
}
void print() {
cout << "\n";
}
template <class Head, class... Tail>
void print(Head&& head, Tail&&... tail) {
cout << head;
if (sizeof...(Tail)) cout << " ";
print(forward<Tail>(tail)...);
}
const string YESNO[2] = {"NO", "YES"};
const string YesNo[2] = {"No", "Yes"};
const string yesno[2] = {"no", "yes"};
void YES(bool t = 1) { cout << YESNO[t] << endl; }
void NO(bool t = 1) { YES(!t); }
void Yes(bool t = 1) { cout << YesNo[t] << endl; }
void No(bool t = 1) { Yes(!t); }
void yes(bool t = 1) { cout << yesno[t] << endl; }
void no(bool t = 1) { yes(!t); }
template <typename T>
vector<T> cumsum(vector<T> A) {
ll N = A.size();
vector<T> B(N + 1);
B[0] = T(0);
FOR(i, N) { B[i + 1] = B[i] + A[i]; }
return B;
}
vi bin_count(vi& A, ll size) {
vi C(size);
for (auto&& x : A) {
++C[x];
}
return C;
}
template <typename T>
vi argsort(vector<T>& A){
vi ids(A.size());
iota(all(ids), 0);
sort(all(ids), [&](ll i, ll j){
return A[i] < A[j] || (A[i] == A[j] && i < j);
});
return ids;
}
ll binary_search(function<bool(ll)> check, ll ok, ll ng) {
while (abs(ok - ng) > 1) {
auto x = (ng + ok) / 2;
if (check(x))
ok = x;
else
ng = x;
}
return ok;
}
template <class T, class S> inline bool chmax(T &a, const S &b) { return (a < b ? a = b, 1 : 0); }
template <class T, class S> inline bool chmin(T &a, const S &b) { return (a > b ? a = b, 1 : 0); }
template <typename T>
vc<T> merge_sort(vc<T>& A, vc<T>& B) {
vc<T> C;
C.reserve(A.size() + B.size());
merge(all(A), all(B), back_inserter(C));
return C;
}
#line 2 "main.cpp"
#line 3 "/home/maspy/library/graph/base.hpp"
template <typename T>
struct Edge {
int frm, to;
T cost;
int id;
Edge(int a, int b, T c, int d) : frm(a), to(b), cost(c), id(d) {}
};
template <typename T>
struct Graph {
int N, M;
using edge_t = Edge<T>;
vector<edge_t> edges;
vector<vector<edge_t>> G;
bool directed;
Graph(){}
Graph(int N, bool bl = false) : N(N), M(0), G(N), directed(bl) {}
void add_edge(int frm, int to, T cost = 1, int i = -1) {
if(i == -1)i = M;
auto e = edge_t(frm, to, cost, i);
edges.eb(e);
G[frm].eb(e);
if (!directed) {
auto e_rev = edge_t(to, frm, cost, i);
G[to].eb(e_rev);
}
++M;
}
void add(int frm, int to, T cost = 1, int i = -10) {
if(i == -10)i = M;
auto e = edge_t(frm, to, cost, i);
edges.eb(e);
G[frm].eb(e);
if (!directed) {
auto e_rev = edge_t(to, frm, cost, i);
G[to].eb(e_rev);
}
++M;
}
void print(bool detail=false) {
FOR(v, N) {
cout << v << " :";
for (auto e : G[v]) {
if(detail) cout << " (" << e.frm << "," << e.to << "," << e.cost << "," << e.id << ")";
else cout << " " << e.to;
}
cout << "\n";
}
}
int size(){return N;}
vector<edge_t>& operator[](int v) { return G[v]; }
};
#line 1 "/home/maspy/library/graph/eulertour.hpp"
template <class T>
struct EulerTour {
T& G;
int root;
bool calc_anc;
vector<int> V, VR, parent, LID, RID, depth;
vector<vector<int>> ancestors;
EulerTour(){}
EulerTour(T& G, int root = 0, bool calc_anc=true) : G(G), root(root), calc_anc(calc_anc) { build(); };
void dfs(int v, int p) {
LID[v] = V.size();
V.eb(v);
parent[v] = p;
depth[v] = (p == -1 ? 0 : depth[p] + 1);
FORIN(e, G[v]) {
int w = e.to;
if (w == p) continue;
dfs(w, v);
}
RID[v] = V.size();
}
void build() {
int N = G.N;
V.reserve(N);
parent.resize(N);
LID.resize(N);
RID.resize(N);
depth.resize(N);
parent[root] = -1;
depth[root] = 0;
dfs(root, -1);
VR = V;
reverse(all(VR));
if(calc_anc){
FOR(k, 20) ancestors.eb(vector<int>(N));
ancestors[0] = parent;
FOR3(k, 1, 20){
FOR(v, G.N){
int w = ancestors[k-1][v];
ancestors[k][v] = (w == -1 ? -1 : ancestors[k-1][w]);
}
}
}
}
int LCA(int a, int b){
assert(calc_anc);
if(depth[a] > depth[b]) swap(a, b);
auto n = depth[b] - depth[a];
FOR(k, 20){
if(n & 1<<k) b = ancestors[k][b];
}
if(a==b) return a;
FOR_R(k, 20){
if(ancestors[k][a] != ancestors[k][b]){
a = ancestors[k][a];
b = ancestors[k][b];
}
}
return parent[a];
}
int LA(int v, int n){
FOR(k, 20) if(n & 1<<k) {v = ancestors[k][v]; if (v==-1) return -1;}
return v;
}
int dist(int a, int b){
int c = LCA(a, b);
return depth[a] + depth[b] - 2 * depth[c];
}
bool in_subtree(int a, int b){
return LID[b] <= LID[a] && LID[a] < RID[b];
}
int move(int a, int b){
assert(a != b);
return (in_subtree(b, a) ? LA(b, depth[b] - depth[a] - 1) : parent[a]);
}
};
template <class T>
struct EulerTour_e {
T& G;
int root;
bool calc_anc;
vector<int> tour, parent, LID, RID, depth;
vector<vector<int>> ancestors;
EulerTour_e(T& G, int root = 0, bool calc_anc=true) : G(G), root(root), calc_anc(calc_anc) { build(); };
void dfs(int v, int p) {
LID[v] = tour.size();
tour.eb(v);
parent[v] = p;
depth[v] = (p == -1 ? 0 : depth[p] + 1);
FORIN(e, G[v]) {
int w = e.to;
if (w == p) continue;
dfs(w, v);
}
RID[v] = tour.size();
tour.eb(~v);
}
void build() {
int N = G.N;
tour.reserve(N * 2);
parent.resize(N);
LID.resize(N);
RID.resize(N);
depth.resize(N);
parent[root] = -1;
depth[root] = 0;
dfs(root, -1);
if(calc_anc){
FOR(k, 20) ancestors.eb(vector<int>(N));
ancestors[0] = parent;
FOR3(k, 1, 20){
FOR(v, G.N){
int w = ancestors[k-1][v];
ancestors[k][v] = (w == -1 ? -1 : ancestors[k-1][w]);
}
}
}
}
int LCA(int a, int b){
assert(calc_anc);
if(depth[a] > depth[b]) swap(a, b);
auto n = depth[b] - depth[a];
FOR(k, 20){
if(n & 1<<k) b = ancestors[k][b];
}
if(a==b) return a;
FOR_R(k, 20){
if(ancestors[k][a] != ancestors[k][b]){
a = ancestors[k][a];
b = ancestors[k][b];
}
}
return parent[a];
}
int LA(int v, int n){
FOR(k, 20) if(n & 1<<k) {v = ancestors[k][v]; if (v==-1) return -1;}
return v;
}
int dist(int a, int b){
int c = LCA(a, b);
return depth[a] + depth[b] - 2 * depth[c];
}
bool in_subtree(int a, int b){
return LID[b] <= LID[a] && LID[a] < RID[b];
}
int move(int a, int b){
assert(a != b);
return (in_subtree(b, a) ? LA(b, depth[b] - depth[a] - 1) : parent[a]);
}
};
#line 5 "main.cpp"
void solve() {
LL(N, M);
// 点、色、色
vvv(int, NG, N, 3, 3);
FOR(_, M) {
LL(a);
CHR(x);
LL(b);
CHR(y);
--a, --b;
x %= 3;
y %= 3;
NG[a][x][y] |= 1 << b;
NG[b][y][x] |= 1 << a;
}
M = (N * 2 + 1) / 3;
ll K = N - M;
// 右側
vi DP(1 << (3 * K));
auto dfs_R = [&](auto self, int p, int a, int b, int c, int ng_a, int ng_b,
int ng_c) -> void {
if (p == N) {
a >>= M;
b >>= M;
c >>= M;
int key = a << (K + K) | b << K | c;
DP[key]++;
return;
}
if (!(ng_a & 1 << p)) {
self(self, p + 1, a | 1 << p, b, c, ng_a | NG[p][0][0],
ng_b | NG[p][0][1], ng_c | NG[p][0][2]);
}
if (!(ng_b & 1 << p)) {
self(self, p + 1, a, b | 1 << p, c, ng_a | NG[p][1][0],
ng_b | NG[p][1][1], ng_c | NG[p][1][2]);
}
if (!(ng_c & 1 << p)) {
self(self, p + 1, a, b, c | 1 << p, ng_a | NG[p][2][0],
ng_b | NG[p][2][1], ng_c | NG[p][2][2]);
}
};
dfs_R(dfs_R, M, 0, 0, 0, 0, 0, 0);
FOR(i, 3 * K) FOR(s, 1 << (3 * K)) {
ll t = s | 1 << i;
if (s < t) DP[t] += DP[s];
}
ll ANS = 0;
auto dfs = [&](auto self, int p, int ng_a, int ng_b, int ng_c) -> void {
if (p == M) {
int full = (1 << K) - 1;
ng_a >>= M;
ng_b >>= M;
ng_c >>= M;
int a = full ^ ng_a;
int b = full ^ ng_b;
int c = full ^ ng_c;
int key = a << (K + K) | b << K | c;
ANS += DP[key];
return;
}
if (!(ng_a & 1 << p)) {
self(self, p + 1, ng_a | NG[p][0][0], ng_b | NG[p][0][1],
ng_c | NG[p][0][2]);
}
if (!(ng_b & 1 << p)) {
self(self, p + 1, ng_a | NG[p][1][0], ng_b | NG[p][1][1],
ng_c | NG[p][1][2]);
}
if (!(ng_c & 1 << p)) {
self(self, p + 1, ng_a | NG[p][2][0], ng_b | NG[p][2][1],
ng_c | NG[p][2][2]);
}
};
dfs(dfs, 0, 0, 0, 0);
print(ANS);
}
signed main() {
cin.tie(nullptr);
ios::sync_with_stdio(false);
cout << setprecision(15);
solve();
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 1ms
memory: 3620kb
input:
2 3 1 R 2 R 1 G 2 R 1 B 2 G
output:
6
result:
ok answer is '6'
Test #2:
score: 0
Accepted
time: 0ms
memory: 3568kb
input:
1 0
output:
3
result:
ok answer is '3'
Test #3:
score: 0
Accepted
time: 132ms
memory: 19552kb
input:
22 0
output:
31381059609
result:
ok answer is '31381059609'
Test #4:
score: 0
Accepted
time: 1ms
memory: 3596kb
input:
4 12 2 R 3 R 1 B 2 B 2 R 3 B 3 R 4 R 1 B 4 G 1 R 3 B 3 G 4 B 2 G 3 G 1 B 2 R 1 G 2 R 1 R 3 G 1 G 3 B
output:
13
result:
ok answer is '13'
Test #5:
score: 0
Accepted
time: 0ms
memory: 3616kb
input:
2 4 1 G 2 G 1 B 2 R 1 R 2 G 1 B 2 B
output:
5
result:
ok answer is '5'
Test #6:
score: 0
Accepted
time: 1ms
memory: 3844kb
input:
5 77 3 B 5 B 2 G 5 G 4 R 5 G 1 G 2 B 1 R 4 R 4 B 5 G 2 B 3 G 2 G 5 B 1 R 3 G 2 R 5 R 3 B 4 R 1 R 2 B 3 G 4 G 1 B 5 G 3 R 5 G 3 G 4 B 1 B 4 G 4 B 5 R 2 R 4 G 1 G 4 B 2 G 3 R 2 R 5 B 1 G 2 R 2 B 4 R 2 R 3 R 3 B 5 G 2 G 3 G 1 R 3 R 1 R 5 G 2 G 3 B 3 B 4 B 4 R 5 B 1 R 2 G 3 G 5 R 1 R 2 R 2 B 5 B 3 B 5 R...
output:
0
result:
ok answer is '0'
Test #7:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
10 141 3 B 9 B 1 R 8 R 4 B 8 R 2 B 4 R 2 R 7 B 6 B 9 R 1 R 9 R 4 R 8 G 3 B 8 R 3 B 5 G 4 B 9 B 4 G 5 R 2 R 3 G 7 B 8 G 5 B 7 R 7 B 8 R 2 B 8 B 7 R 10 B 2 G 10 G 6 G 8 B 1 R 4 B 8 R 10 B 2 G 3 B 2 B 5 B 3 R 4 R 3 B 7 R 3 R 7 R 2 R 10 R 3 G 9 G 5 B 10 G 6 R 8 B 3 R 9 G 1 B 10 G 3 R 8 G 1 B 3 R 4 R 9 R...
output:
0
result:
ok answer is '0'
Test #8:
score: 0
Accepted
time: 42ms
memory: 19516kb
input:
22 2079 1 R 2 R 1 R 2 G 1 R 2 B 1 G 2 R 1 G 2 G 1 G 2 B 1 B 2 R 1 B 2 G 1 B 2 B 1 R 3 R 1 R 3 G 1 R 3 B 1 G 3 R 1 G 3 G 1 G 3 B 1 B 3 R 1 B 3 G 1 B 3 B 1 R 4 R 1 R 4 G 1 R 4 B 1 G 4 R 1 G 4 G 1 G 4 B 1 B 4 R 1 B 4 G 1 B 4 B 1 R 5 R 1 R 5 G 1 R 5 B 1 G 5 R 1 G 5 G 1 G 5 B 1 B 5 R 1 B 5 G 1 B 5 B 1 R ...
output:
0
result:
ok answer is '0'
Test #9:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
4 52 1 G 2 B 2 G 4 R 1 G 4 B 1 G 3 G 3 B 4 B 2 R 4 B 2 G 3 G 3 B 4 R 1 B 2 B 1 G 4 G 3 G 4 B 1 B 4 R 3 R 4 G 2 B 4 B 1 G 2 G 3 G 4 G 2 R 3 R 1 R 3 G 2 R 4 G 2 B 3 B 2 B 3 G 2 R 3 G 1 B 3 G 1 G 4 R 1 G 2 R 2 G 4 B 1 G 3 R 1 R 2 R 1 R 2 G 1 R 4 G 2 R 4 R 2 B 3 R 1 B 3 B 2 B 4 R 3 R 4 R 2 G 4 G 3 B 4 G...
output:
0
result:
ok answer is '0'
Test #10:
score: 0
Accepted
time: 1ms
memory: 3780kb
input:
8 10 1 G 7 R 7 R 8 G 3 R 6 R 3 G 4 R 5 B 8 R 4 B 6 G 2 G 5 B 1 R 2 B 7 G 8 G 3 G 5 R
output:
1874
result:
ok answer is '1874'
Test #11:
score: 0
Accepted
time: 0ms
memory: 3620kb
input:
4 40 2 G 3 G 1 R 4 R 3 G 4 G 1 R 3 R 1 G 2 G 2 R 3 R 3 R 4 R 1 G 2 B 1 B 4 R 1 B 3 R 1 G 4 R 2 R 4 G 1 B 2 R 1 B 4 G 1 G 3 R 1 G 4 G 2 G 3 B 1 B 2 G 1 R 3 G 1 R 2 B 1 B 3 B 2 B 3 R 1 B 3 G 1 G 4 B 1 G 3 G 2 G 3 R 1 R 4 G 2 B 4 B 2 G 4 R 3 R 4 B 2 R 4 B 1 R 2 G 2 B 4 R 1 B 2 B 1 G 3 B 2 G 4 B 1 R 3 B...
output:
0
result:
ok answer is '0'
Test #12:
score: 0
Accepted
time: 0ms
memory: 3500kb
input:
2 3 1 B 2 B 1 R 2 R 1 G 2 R
output:
6
result:
ok answer is '6'
Test #13:
score: 0
Accepted
time: 0ms
memory: 3684kb
input:
3 24 1 R 2 B 1 B 3 B 2 G 3 B 1 B 2 G 1 B 2 B 2 R 3 G 1 G 3 B 2 B 3 R 1 R 3 R 2 R 3 R 1 B 3 R 1 B 3 G 1 R 3 B 2 R 3 B 2 B 3 B 1 R 2 R 2 G 3 G 2 B 3 G 1 G 2 G 1 G 3 G 1 G 2 R 2 G 3 R 1 G 2 B 1 R 3 G
output:
0
result:
ok answer is '0'
Test #14:
score: 0
Accepted
time: 0ms
memory: 3568kb
input:
9 176 2 G 3 R 1 G 4 R 4 B 5 G 5 G 7 B 8 G 9 R 1 R 4 B 4 B 8 B 1 B 5 B 6 B 8 B 2 G 6 G 2 B 8 B 1 R 9 B 2 B 8 G 1 G 4 G 1 B 3 R 3 R 7 B 7 B 8 B 5 B 6 R 6 R 9 R 5 R 7 G 4 G 9 B 3 G 9 G 1 R 6 R 1 G 3 G 3 R 6 R 4 G 5 R 4 G 7 B 2 G 8 B 1 B 9 R 3 G 8 R 3 R 5 G 5 R 9 R 3 G 5 R 1 R 4 R 4 B 7 B 3 R 9 R 2 B 4 ...
output:
0
result:
ok answer is '0'
Test #15:
score: 0
Accepted
time: 60ms
memory: 19468kb
input:
22 38 12 G 17 B 1 G 20 R 9 B 20 G 15 G 19 B 11 B 22 R 13 R 19 G 21 R 22 B 4 G 11 B 9 R 10 R 8 R 15 B 1 G 16 B 13 R 19 B 1 G 11 G 9 R 11 G 7 B 8 G 9 R 18 G 3 G 13 B 3 G 14 B 10 R 16 R 14 G 16 B 3 R 9 R 18 R 21 B 11 B 20 G 1 G 10 G 2 R 16 G 6 B 20 R 4 B 20 B 8 G 10 B 7 R 11 R 16 G 18 G 3 B 8 B 11 R 22...
output:
258518109
result:
ok answer is '258518109'
Test #16:
score: 0
Accepted
time: 3ms
memory: 5356kb
input:
18 25 16 G 17 B 1 G 14 B 7 G 10 R 11 R 12 B 5 G 18 B 8 R 16 R 11 G 15 B 4 R 8 G 13 G 15 G 8 R 11 G 3 G 4 R 1 B 16 B 6 B 17 R 5 G 16 R 7 R 8 G 12 B 18 G 9 R 18 R 4 B 15 R 6 R 17 B 6 B 7 G 4 B 15 G 2 B 13 R 2 R 8 R 1 G 12 B 3 R 5 G
output:
21513056
result:
ok answer is '21513056'
Test #17:
score: 0
Accepted
time: 0ms
memory: 3552kb
input:
2 6 1 G 2 R 1 B 2 B 1 R 2 R 1 R 2 G 1 B 2 G 1 R 2 B
output:
3
result:
ok answer is '3'
Test #18:
score: 0
Accepted
time: 1ms
memory: 3624kb
input:
11 201 4 B 9 R 2 B 7 G 1 G 9 G 5 G 8 G 3 G 4 G 1 R 7 R 3 R 7 R 7 G 9 G 2 B 8 G 5 B 7 B 4 G 8 G 4 G 5 B 5 B 9 R 4 R 11 G 2 B 10 B 7 G 11 B 6 G 7 G 7 G 11 G 3 B 8 R 8 R 10 R 3 R 10 B 7 G 8 R 2 R 4 R 9 R 10 R 2 G 11 R 3 B 5 R 3 B 10 G 1 B 9 R 4 G 7 G 10 B 11 B 4 B 6 G 3 B 9 G 4 R 9 B 1 G 10 B 1 G 2 B 6...
output:
0
result:
ok answer is '0'
Test #19:
score: 0
Accepted
time: 44ms
memory: 19436kb
input:
20 12 6 B 12 G 7 B 15 R 14 R 17 G 8 B 14 G 2 G 9 R 7 G 8 G 9 G 12 G 3 R 9 B 18 B 20 B 8 G 20 R 3 R 7 G 3 R 12 R
output:
875184912
result:
ok answer is '875184912'
Test #20:
score: 0
Accepted
time: 48ms
memory: 19468kb
input:
22 1804 6 B 11 R 1 G 18 R 12 B 17 G 5 G 22 G 14 G 21 R 11 G 19 B 18 G 21 G 9 R 13 B 2 R 20 G 2 R 8 R 2 G 6 R 7 G 16 R 13 R 14 B 2 B 17 R 3 R 21 B 3 B 5 R 2 B 12 G 18 R 20 G 1 G 22 B 14 R 17 B 6 R 10 B 1 R 13 B 10 G 11 R 2 G 20 G 17 R 19 G 5 G 15 B 19 R 20 G 6 G 17 B 11 R 16 B 3 R 15 B 6 G 19 B 13 R ...
output:
0
result:
ok answer is '0'
Test #21:
score: 0
Accepted
time: 1ms
memory: 3616kb
input:
8 163 3 R 6 G 2 R 8 G 4 B 5 G 1 G 2 R 1 G 3 R 2 R 5 R 1 R 3 B 1 R 6 B 2 B 5 G 4 R 8 G 3 R 4 B 4 R 5 B 1 G 4 B 4 R 5 G 6 G 8 G 2 R 3 B 1 R 7 B 2 B 6 G 2 R 6 B 2 B 5 B 3 B 5 R 3 B 7 B 3 G 5 R 6 G 7 B 1 B 7 B 2 B 8 R 4 G 6 G 7 R 8 B 2 G 3 G 2 R 4 G 2 B 3 B 7 G 8 B 5 R 6 B 1 B 8 R 1 R 8 B 1 B 2 R 6 B 8 ...
output:
0
result:
ok answer is '0'
Test #22:
score: 0
Accepted
time: 1ms
memory: 3784kb
input:
16 272 10 B 11 G 7 B 15 G 3 R 6 B 3 R 11 B 11 B 13 R 5 G 11 G 6 R 13 G 6 G 11 R 1 B 8 B 12 R 16 R 4 R 8 B 14 B 15 G 9 B 15 B 2 R 9 B 2 G 12 R 12 R 13 B 2 B 7 R 1 G 5 B 1 B 10 R 6 R 12 B 3 B 13 R 5 B 14 R 7 R 8 B 10 R 15 G 13 B 16 R 5 B 10 R 7 G 13 R 6 G 8 B 2 R 8 G 6 G 16 R 6 B 7 R 1 B 9 B 3 G 7 R 7...
output:
0
result:
ok answer is '0'
Test #23:
score: 0
Accepted
time: 1ms
memory: 3588kb
input:
12 263 3 G 9 R 5 R 8 B 4 G 11 R 6 B 11 G 11 B 12 R 5 R 11 B 10 G 12 G 4 R 11 B 2 G 8 B 8 R 9 B 4 R 6 R 2 B 3 R 7 B 9 G 2 G 10 G 9 G 10 G 6 G 8 B 7 R 10 G 4 G 11 B 7 G 12 B 1 B 12 R 1 R 10 G 5 G 10 R 5 B 7 G 10 R 12 R 7 B 8 G 2 R 4 G 4 R 5 B 5 G 12 B 8 B 12 R 7 B 10 R 2 R 11 R 4 B 6 G 7 B 9 B 5 G 6 B...
output:
0
result:
ok answer is '0'
Test #24:
score: 0
Accepted
time: 1ms
memory: 3592kb
input:
4 54 1 G 4 R 1 R 3 R 2 B 4 B 2 G 3 R 2 R 3 G 2 R 3 B 1 B 3 G 2 B 3 G 3 B 4 B 3 G 4 G 1 R 3 B 2 R 3 R 2 B 3 B 2 G 4 R 1 G 4 B 1 R 2 B 3 G 4 R 2 R 4 B 1 G 3 G 2 B 4 G 2 G 4 G 1 B 4 R 1 B 3 B 1 R 4 R 2 G 3 B 2 B 4 R 1 R 2 G 1 R 2 R 3 R 4 G 1 G 2 G 2 G 4 B 2 R 4 R 3 B 4 R 3 R 4 R 1 B 2 R 1 R 4 G 1 G 2 R...
output:
0
result:
ok answer is '0'
Test #25:
score: 0
Accepted
time: 8ms
memory: 5180kb
input:
19 20 12 B 14 G 7 R 15 B 7 B 13 R 5 B 18 R 3 R 5 B 1 R 17 R 2 G 6 G 4 B 6 B 11 G 18 G 6 R 8 B 13 R 19 G 2 G 10 R 3 G 10 R 10 G 13 B 7 R 9 B 12 G 17 G 8 G 14 G 2 B 16 G 14 B 16 G 5 G 14 G
output:
111329984
result:
ok answer is '111329984'
Test #26:
score: 0
Accepted
time: 44ms
memory: 19452kb
input:
20 21 4 B 8 R 4 R 10 R 5 G 15 G 4 B 13 R 18 G 20 B 8 G 17 R 7 B 9 G 9 G 15 B 18 G 19 R 6 B 17 B 14 B 16 R 2 G 13 G 1 B 17 B 4 G 20 R 9 R 17 B 3 R 15 B 9 B 12 B 4 B 11 R 10 R 16 R 10 B 17 G 8 R 11 B
output:
267962040
result:
ok answer is '267962040'
Test #27:
score: 0
Accepted
time: 3ms
memory: 5164kb
input:
18 17 5 R 6 B 9 G 13 G 12 B 17 G 11 B 17 R 12 G 16 R 2 B 11 B 9 B 17 R 3 B 7 R 3 G 16 R 14 R 16 G 10 R 15 B 1 B 15 R 2 G 18 B 5 B 9 B 4 G 11 R 6 B 15 G 8 R 12 B
output:
50671200
result:
ok answer is '50671200'
Test #28:
score: 0
Accepted
time: 44ms
memory: 19548kb
input:
21 22 10 G 16 R 4 B 19 G 7 G 18 G 12 R 20 R 8 B 9 R 2 G 18 R 3 R 6 B 2 G 9 B 20 B 21 R 19 R 20 G 4 B 5 R 2 G 15 R 9 R 11 R 1 B 15 R 3 G 10 G 10 B 12 B 13 R 16 R 14 B 20 B 3 B 15 B 12 G 17 B 17 G 19 B 1 G 20 R
output:
665745048
result:
ok answer is '665745048'
Test #29:
score: 0
Accepted
time: 35ms
memory: 19612kb
input:
20 22 10 R 13 R 16 B 17 B 3 B 17 R 3 G 13 R 7 G 19 R 4 R 14 R 11 R 12 G 5 B 11 R 7 B 15 B 4 B 16 R 7 R 16 R 6 G 11 B 5 R 15 G 6 R 20 R 1 G 9 G 8 G 12 B 13 G 18 G 1 G 5 B 2 G 19 R 5 B 20 B 12 R 17 G 2 B 18 B
output:
215418240
result:
ok answer is '215418240'
Test #30:
score: 0
Accepted
time: 69ms
memory: 19688kb
input:
22 24 9 G 21 B 8 B 22 G 18 G 19 B 5 R 20 R 5 B 15 R 5 R 8 B 5 R 12 R 16 B 19 B 4 B 14 B 10 R 18 B 11 R 12 B 3 R 7 R 5 R 19 G 9 B 11 B 4 G 22 B 3 B 15 R 2 R 15 R 1 G 20 R 10 G 17 R 5 R 13 R 6 R 19 R 1 G 7 B 3 G 21 R 8 R 16 G
output:
2114213004
result:
ok answer is '2114213004'
Test #31:
score: 0
Accepted
time: 49ms
memory: 19632kb
input:
21 21 9 B 12 B 10 B 11 B 5 B 16 R 2 B 7 B 3 B 11 B 1 G 11 R 16 R 17 G 6 R 15 R 3 G 17 R 17 R 19 R 13 B 18 G 3 R 14 B 13 R 16 R 8 G 13 R 9 B 13 R 7 B 20 R 16 R 21 G 5 B 7 B 4 B 5 B 7 R 15 B 2 G 17 R
output:
1187593920
result:
ok answer is '1187593920'
Test #32:
score: 0
Accepted
time: 52ms
memory: 19468kb
input:
21 23 17 G 20 R 12 B 16 R 14 B 18 R 11 G 17 R 16 B 20 B 18 G 21 B 3 R 17 R 2 B 19 B 3 R 21 G 3 G 4 B 8 G 10 R 7 G 11 G 9 R 19 R 4 G 5 R 6 G 9 R 4 R 8 G 5 B 6 B 1 R 18 B 12 G 15 B 13 R 15 B 5 B 12 R 4 R 19 R 1 B 6 R
output:
583976832
result:
ok answer is '583976832'
Test #33:
score: 0
Accepted
time: 74ms
memory: 19496kb
input:
22 21 9 R 14 B 1 R 20 R 21 R 22 R 10 G 12 R 9 R 22 R 9 B 19 R 18 B 21 G 7 R 11 B 2 B 9 G 5 G 13 G 11 R 12 R 10 G 20 G 6 G 9 G 1 B 16 G 8 G 22 R 7 R 21 G 4 G 19 R 6 B 15 R 5 G 15 R 3 R 21 G 5 G 17 G
output:
3429459648
result:
ok answer is '3429459648'
Test #34:
score: 0
Accepted
time: 51ms
memory: 19468kb
input:
21 23 7 B 16 G 2 R 11 B 2 G 18 B 8 R 15 G 10 R 14 R 4 G 16 B 3 R 4 R 4 G 11 R 2 B 8 B 9 R 11 B 11 R 12 R 2 R 17 R 4 R 19 B 4 G 10 R 3 B 21 B 7 G 20 R 6 R 7 B 1 R 20 G 13 G 20 R 1 R 5 R 5 G 10 R 4 B 7 R 13 G 16 B
output:
639060192
result:
ok answer is '639060192'
Test #35:
score: 0
Accepted
time: 62ms
memory: 19644kb
input:
22 23 11 R 14 G 7 G 12 R 2 B 10 B 5 G 19 G 13 R 15 G 1 G 12 R 14 G 15 R 7 R 14 R 6 R 21 R 3 B 8 R 18 R 20 B 3 B 14 B 6 G 19 R 7 B 9 B 7 B 19 G 2 B 8 G 5 B 22 G 12 R 17 B 2 R 4 G 7 R 20 B 14 R 16 B 2 G 13 G 4 R 8 B
output:
1854480384
result:
ok answer is '1854480384'
Test #36:
score: 0
Accepted
time: 45ms
memory: 19644kb
input:
21 21 14 G 17 G 3 G 5 R 11 R 13 G 2 G 7 G 1 R 10 G 15 B 18 B 4 B 5 G 3 R 7 R 11 G 20 G 2 G 11 G 5 G 9 B 8 R 9 B 6 G 8 R 13 R 19 R 2 B 17 R 3 G 21 G 1 B 5 B 8 B 12 B 16 G 18 R 5 B 18 G 4 B 11 R
output:
795882456
result:
ok answer is '795882456'
Test #37:
score: 0
Accepted
time: 73ms
memory: 19496kb
input:
22 23 15 G 22 B 13 G 21 R 10 G 11 G 18 B 19 G 2 B 3 B 14 R 21 R 2 G 6 B 2 R 16 R 11 G 20 G 11 G 13 G 3 B 11 R 11 G 17 R 5 G 9 B 4 G 21 B 1 G 19 G 7 R 22 B 17 G 22 G 1 B 22 B 2 G 8 R 2 G 9 R 7 G 12 G 7 B 22 R 2 G 9 G
output:
2386498896
result:
ok answer is '2386498896'
Test #38:
score: 0
Accepted
time: 50ms
memory: 19512kb
input:
21 23 6 B 16 R 4 R 9 R 5 R 15 B 4 B 20 G 9 B 15 R 7 G 21 B 5 G 18 B 6 B 10 R 5 G 13 R 15 G 21 B 6 B 9 G 5 R 14 G 8 B 18 R 2 R 10 R 1 G 17 G 12 G 15 R 19 B 20 G 1 R 7 G 3 G 16 G 11 R 12 G 4 G 21 G 16 R 19 R 6 G 8 G
output:
661173792
result:
ok answer is '661173792'
Test #39:
score: 0
Accepted
time: 6ms
memory: 5308kb
input:
18 18 10 G 12 B 4 R 11 B 7 R 12 B 5 B 15 R 6 R 9 B 9 R 17 B 1 G 15 G 8 R 17 G 7 R 18 G 1 R 9 B 6 G 10 R 3 R 9 G 4 B 8 G 7 R 13 R 2 R 7 R 13 R 16 R 9 R 14 B 3 B 13 R
output:
47105064
result:
ok answer is '47105064'
Test #40:
score: 0
Accepted
time: 51ms
memory: 19628kb
input:
21 20 6 G 11 B 5 G 9 B 4 G 14 R 15 R 18 R 6 G 7 R 1 R 21 G 3 B 7 B 11 G 12 B 4 B 20 R 3 G 4 B 10 R 17 B 9 R 13 G 14 B 15 B 4 B 17 B 13 B 21 R 5 R 17 R 5 B 19 G 3 G 8 B 7 R 16 B 2 B 21 R
output:
908390772
result:
ok answer is '908390772'
Test #41:
score: 0
Accepted
time: 8ms
memory: 5352kb
input:
18 17 4 B 15 R 4 B 16 R 5 R 14 G 16 B 17 G 7 G 8 B 9 R 14 B 8 R 14 B 3 B 9 R 1 R 14 B 3 B 16 R 10 G 18 G 10 G 11 G 12 G 17 R 14 R 18 B 1 G 2 B 4 R 13 G 6 B 8 R
output:
52441092
result:
ok answer is '52441092'
Test #42:
score: 0
Accepted
time: 44ms
memory: 19500kb
input:
20 21 9 B 15 R 4 G 15 G 1 B 13 B 7 R 18 R 6 G 14 G 7 R 9 G 6 B 11 G 7 B 14 B 9 G 13 B 5 G 11 B 8 R 18 G 1 G 3 G 12 B 16 G 2 G 13 R 5 R 20 R 10 G 13 R 13 B 16 B 1 G 19 B 17 B 18 B 12 R 16 R 15 R 19 R
output:
262244682
result:
ok answer is '262244682'
Test #43:
score: 0
Accepted
time: 3ms
memory: 5356kb
input:
18 18 8 G 15 B 2 G 6 B 14 B 15 G 1 G 17 B 4 R 8 B 4 R 13 R 6 R 12 B 4 G 11 G 3 G 8 B 6 R 11 B 1 R 4 B 9 B 15 G 12 R 18 B 5 R 7 B 1 R 16 B 10 B 18 G 2 R 5 G 14 B 17 G
output:
41204079
result:
ok answer is '41204079'
Test #44:
score: 0
Accepted
time: 73ms
memory: 19616kb
input:
22 24 14 R 17 R 4 G 21 R 15 R 16 R 16 R 19 B 2 R 12 R 5 B 7 R 4 B 18 B 8 B 22 R 6 B 20 R 8 B 10 B 4 R 20 B 6 R 8 B 9 R 21 B 5 R 15 G 13 R 18 B 11 R 19 B 2 B 5 G 11 R 20 R 1 B 15 G 7 G 14 G 3 G 16 G 11 B 13 R 5 G 19 R 3 B 5 R
output:
1696899432
result:
ok answer is '1696899432'
Test #45:
score: 0
Accepted
time: 5ms
memory: 5240kb
input:
19 19 14 B 16 G 5 G 14 G 2 G 19 R 13 G 16 B 1 G 19 G 1 R 12 G 3 R 8 G 7 R 11 B 2 R 7 G 6 R 11 G 6 G 9 G 7 B 8 G 9 G 10 R 7 B 15 G 6 B 15 B 5 B 18 R 14 G 15 R 5 G 9 R 7 G 11 B
output:
93857886
result:
ok answer is '93857886'
Test #46:
score: 0
Accepted
time: 56ms
memory: 19472kb
input:
22 33 6 R 19 R 5 G 7 G 2 G 10 R 2 B 4 B 11 R 14 B 1 B 2 R 6 B 16 B 8 G 20 B 9 B 20 R 7 G 12 B 15 B 21 R 18 R 19 B 14 B 15 G 9 B 15 B 2 B 13 G 9 G 21 B 3 B 16 R 5 R 19 B 5 R 15 B 11 B 15 B 5 R 14 G 5 B 12 B 5 G 17 B 4 B 18 G 4 B 11 G 12 R 16 G 3 G 8 G 4 G 12 R 5 B 10 B 15 B 21 B 1 R 17 G 4 G 6 R 5 B ...
output:
645861438
result:
ok answer is '645861438'
Test #47:
score: 0
Accepted
time: 70ms
memory: 19552kb
input:
21 7 1 R 13 R 6 B 20 G 14 G 17 G 11 G 16 R 10 B 18 G 1 G 5 B 1 G 19 B
output:
4595429376
result:
ok answer is '4595429376'
Test #48:
score: 0
Accepted
time: 133ms
memory: 19552kb
input:
22 1 5 R 16 R
output:
27894275208
result:
ok answer is '27894275208'
Test #49:
score: 0
Accepted
time: 5ms
memory: 5312kb
input:
18 28 4 B 15 R 9 G 13 G 1 B 18 G 3 G 17 B 4 G 18 R 2 R 9 G 2 G 7 R 7 B 14 R 10 R 13 G 4 R 7 G 1 R 8 G 1 B 11 G 1 B 9 R 7 B 11 G 1 R 4 R 8 G 11 B 6 B 17 G 1 R 2 G 16 B 18 R 6 R 18 R 6 R 10 B 1 B 14 B 12 R 18 B 2 R 10 B 14 G 17 R 1 R 17 G 1 B 5 B 11 B 12 B
output:
16261180
result:
ok answer is '16261180'
Test #50:
score: 0
Accepted
time: 53ms
memory: 19712kb
input:
20 6 14 R 16 G 2 R 17 R 4 B 20 G 15 R 16 B 3 G 20 G 1 G 2 B
output:
1718680194
result:
ok answer is '1718680194'
Test #51:
score: 0
Accepted
time: 82ms
memory: 19476kb
input:
22 15 10 B 22 B 5 B 7 G 2 R 5 B 4 B 5 G 6 G 17 G 14 R 16 G 3 G 9 R 6 R 15 G 2 G 5 G 11 R 17 R 16 G 20 G 17 R 18 R 16 G 20 R 3 R 21 R 4 G 15 B
output:
5320183680
result:
ok answer is '5320183680'
Test #52:
score: 0
Accepted
time: 6ms
memory: 5380kb
input:
18 22 1 B 11 R 1 R 2 R 10 G 11 B 4 G 11 R 10 B 18 G 6 R 11 R 13 B 14 B 5 R 15 R 1 G 8 G 12 B 15 R 14 B 18 R 3 B 12 G 1 G 6 B 12 R 16 R 9 R 18 G 14 R 17 G 3 B 18 B 8 R 18 R 14 G 16 G 10 R 14 R 5 B 6 B 2 B 16 B
output:
21870162
result:
ok answer is '21870162'
Test #53:
score: 0
Accepted
time: 61ms
memory: 19488kb
input:
22 26 10 G 16 R 5 R 13 B 4 R 15 B 11 B 19 R 1 R 15 G 11 G 18 R 3 R 5 G 14 G 20 B 9 R 14 R 19 G 22 B 2 B 18 R 3 B 18 B 13 G 20 G 14 R 20 R 3 G 14 B 6 B 14 R 3 G 16 R 4 R 21 R 4 G 10 G 9 R 12 B 1 B 6 R 8 G 14 G 2 B 16 B 1 B 10 G 2 G 3 B 6 B 22 G
output:
1215125316
result:
ok answer is '1215125316'
Test #54:
score: 0
Accepted
time: 123ms
memory: 19460kb
input:
22 7 4 G 18 G 3 B 17 G 18 G 20 G 11 B 18 R 8 G 13 G 10 B 22 G 11 R 21 R
output:
13514190336
result:
ok answer is '13514190336'
Test #55:
score: 0
Accepted
time: 3ms
memory: 5184kb
input:
19 31 1 R 12 R 3 B 10 G 2 G 18 B 7 G 17 R 7 B 19 R 9 G 14 R 1 B 17 G 10 G 11 R 3 B 16 G 14 B 18 G 1 G 16 R 14 G 16 G 5 G 18 G 10 G 14 R 2 R 7 G 5 B 11 B 3 R 6 G 5 R 7 R 9 B 11 G 1 B 5 R 4 G 19 R 10 R 16 G 16 R 17 G 5 G 19 B 7 B 8 B 5 R 6 G 12 G 15 R 12 R 17 B 5 G 16 B 8 G 10 B 5 G 15 G
output:
21281991
result:
ok answer is '21281991'
Test #56:
score: 0
Accepted
time: 43ms
memory: 19500kb
input:
20 23 4 B 18 R 9 R 19 B 6 R 10 B 15 G 18 B 4 G 10 G 16 G 19 B 9 R 16 B 7 G 19 R 2 R 14 G 1 R 8 B 5 R 9 G 7 R 18 R 11 R 20 B 5 R 20 G 10 B 12 B 3 R 7 B 8 G 15 G 8 G 16 G 7 R 13 R 13 G 19 B 8 R 9 R 4 R 7 G 5 R 14 R
output:
241127262
result:
ok answer is '241127262'
Test #57:
score: 0
Accepted
time: 15ms
memory: 5224kb
input:
19 0
output:
1162261467
result:
ok answer is '1162261467'
Test #58:
score: 0
Accepted
time: 98ms
memory: 19500kb
input:
22 7 11 G 13 B 4 R 13 G 12 G 21 B 1 R 10 B 19 G 21 R 12 R 16 R 9 G 15 B
output:
13094706240
result:
ok answer is '13094706240'
Test #59:
score: 0
Accepted
time: 40ms
memory: 19552kb
input:
20 3 4 B 9 B 5 R 7 G 8 R 16 B
output:
2448880128
result:
ok answer is '2448880128'
Test #60:
score: 0
Accepted
time: 83ms
memory: 19552kb
input:
22 22 8 R 10 B 3 B 14 B 1 R 5 B 16 B 17 G 20 G 21 R 3 R 20 G 3 B 5 B 9 G 12 G 2 G 16 G 12 R 20 B 15 R 21 B 5 B 13 G 5 G 17 R 11 B 22 G 6 G 16 R 17 G 22 G 20 B 22 R 4 R 16 G 13 B 18 R 11 G 20 G 1 R 22 B 1 B 2 B
output:
2171235456
result:
ok answer is '2171235456'
Test #61:
score: 0
Accepted
time: 64ms
memory: 19528kb
input:
22 21 1 R 2 R 2 R 3 R 3 R 4 R 4 R 5 R 5 R 6 R 6 R 7 R 7 R 8 R 8 R 9 R 9 R 10 R 10 R 11 R 11 R 12 R 12 R 13 R 13 R 14 R 14 R 15 R 15 R 16 R 16 R 17 R 17 R 18 R 18 R 19 R 19 R 20 R 20 R 21 R 21 R 22 R
output:
4316282880
result:
ok answer is '4316282880'