QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#875200 | #9567. Toe-Tac-Tics | ucup-team2796 | AC ✓ | 62ms | 6096kb | C++23 | 23.7kb | 2025-01-29 12:41:44 | 2025-01-29 12:41:51 |
Judging History
answer
// 1 "library/Template/template.hpp"
#include <bits/stdc++.h>
using namespace std;
#define rep(i, a, b) for (int i = (int)(a); i < (int)(b); i++)
#define rrep(i, a, b) for (int i = (int)(b)-1; i >= (int)(a); i--)
#define ALL(v) (v).begin(), (v).end()
#define UNIQUE(v) sort(ALL(v)), (v).erase(unique(ALL(v)), (v).end())
#define SZ(v) (int)v.size()
#define MIN(v) *min_element(ALL(v))
#define MAX(v) *max_element(ALL(v))
#define LB(v, x) int(lower_bound(ALL(v), (x)) - (v).begin())
#define UB(v, x) int(upper_bound(ALL(v), (x)) - (v).begin())
using uint = unsigned int;
using ll = long long int;
using ull = unsigned long long;
using i128 = __int128_t;
using u128 = __uint128_t;
const int inf = 0x3fffffff;
const ll INF = 0x1fffffffffffffff;
template <typename T> inline bool chmax(T &a, T b) {
if (a < b) {
a = b;
return 1;
}
return 0;
}
template <typename T> inline bool chmin(T &a, T b) {
if (a > b) {
a = b;
return 1;
}
return 0;
}
template <typename T, typename U> T ceil(T x, U y) {
assert(y != 0);
if (y < 0)
x = -x, y = -y;
return (x > 0 ? (x + y - 1) / y : x / y);
}
template <typename T, typename U> T floor(T x, U y) {
assert(y != 0);
if (y < 0)
x = -x, y = -y;
return (x > 0 ? x / y : (x - y + 1) / y);
}
template <typename T> int popcnt(T x) {
return __builtin_popcountll(x);
}
template <typename T> int topbit(T x) {
return (x == 0 ? -1 : 63 - __builtin_clzll(x));
}
template <typename T> int lowbit(T x) {
return (x == 0 ? -1 : __builtin_ctzll(x));
}
template <class T, class U>
ostream &operator<<(ostream &os, const pair<T, U> &p) {
os << "P(" << p.first << ", " << p.second << ")";
return os;
}
template <typename T> ostream &operator<<(ostream &os, const vector<T> &vec) {
os << "{";
for (int i = 0; i < vec.size(); i++) {
os << vec[i] << (i + 1 == vec.size() ? "" : ", ");
}
os << "}";
return os;
}
template <typename T, typename U>
ostream &operator<<(ostream &os, const map<T, U> &map_var) {
os << "{";
for (auto itr = map_var.begin(); itr != map_var.end(); itr++) {
os << "(" << itr->first << ", " << itr->second << ")";
itr++;
if (itr != map_var.end())
os << ", ";
itr--;
}
os << "}";
return os;
}
template <typename T> ostream &operator<<(ostream &os, const set<T> &set_var) {
os << "{";
for (auto itr = set_var.begin(); itr != set_var.end(); itr++) {
os << *itr;
++itr;
if (itr != set_var.end())
os << ", ";
itr--;
}
os << "}";
return os;
}
#ifdef LOCAL
#define show(...) _show(0, #__VA_ARGS__, __VA_ARGS__)
#else
#define show(...) true
#endif
template <typename T> void _show(int i, T name) {
cerr << '\n';
}
template <typename T1, typename T2, typename... T3>
void _show(int i, const T1 &a, const T2 &b, const T3 &...c) {
for (; a[i] != ',' && a[i] != '\0'; i++)
cerr << a[i];
cerr << ":" << b << " ";
_show(i + 1, a, c...);
}
// 2 "library/Utility/fastio.hpp"
#include <unistd.h>
namespace fastio {
static constexpr uint32_t SZ = 1 << 17;
char ibuf[SZ];
char obuf[SZ];
char out[100];
// pointer of ibuf, obuf
uint32_t pil = 0, pir = 0, por = 0;
struct Pre {
char num[10000][4];
constexpr Pre() : num() {
for (int i = 0; i < 10000; i++) {
int n = i;
for (int j = 3; j >= 0; j--) {
num[i][j] = n % 10 | '0';
n /= 10;
}
}
}
} constexpr pre;
inline void load() {
memmove(ibuf, ibuf + pil, pir - pil);
pir = pir - pil + fread(ibuf + pir - pil, 1, SZ - pir + pil, stdin);
pil = 0;
if (pir < SZ)
ibuf[pir++] = '\n';
}
inline void flush() {
fwrite(obuf, 1, por, stdout);
por = 0;
}
void rd(char &c) {
do {
if (pil + 1 > pir)
load();
c = ibuf[pil++];
} while (isspace(c));
}
void rd(string &x) {
x.clear();
char c;
do {
if (pil + 1 > pir)
load();
c = ibuf[pil++];
} while (isspace(c));
do {
x += c;
if (pil == pir)
load();
c = ibuf[pil++];
} while (!isspace(c));
}
template <typename T> void rd_real(T &x) {
string s;
rd(s);
x = stod(s);
}
template <typename T> void rd_integer(T &x) {
if (pil + 100 > pir)
load();
char c;
do
c = ibuf[pil++];
while (c < '-');
bool minus = 0;
if constexpr (is_signed<T>::value || is_same_v<T, i128>) {
if (c == '-') {
minus = 1, c = ibuf[pil++];
}
}
x = 0;
while ('0' <= c) {
x = x * 10 + (c & 15), c = ibuf[pil++];
}
if constexpr (is_signed<T>::value || is_same_v<T, i128>) {
if (minus)
x = -x;
}
}
void rd(int &x) {
rd_integer(x);
}
void rd(ll &x) {
rd_integer(x);
}
void rd(i128 &x) {
rd_integer(x);
}
void rd(uint &x) {
rd_integer(x);
}
void rd(ull &x) {
rd_integer(x);
}
void rd(u128 &x) {
rd_integer(x);
}
void rd(double &x) {
rd_real(x);
}
void rd(long double &x) {
rd_real(x);
}
template <class T, class U> void rd(pair<T, U> &p) {
return rd(p.first), rd(p.second);
}
template <size_t N = 0, typename T> void rd_tuple(T &t) {
if constexpr (N < std::tuple_size<T>::value) {
auto &x = std::get<N>(t);
rd(x);
rd_tuple<N + 1>(t);
}
}
template <class... T> void rd(tuple<T...> &tpl) {
rd_tuple(tpl);
}
template <size_t N = 0, typename T> void rd(array<T, N> &x) {
for (auto &d : x)
rd(d);
}
template <class T> void rd(vector<T> &x) {
for (auto &d : x)
rd(d);
}
void read() {}
template <class H, class... T> void read(H &h, T &...t) {
rd(h), read(t...);
}
void wt(const char c) {
if (por == SZ)
flush();
obuf[por++] = c;
}
void wt(const string s) {
for (char c : s)
wt(c);
}
void wt(const char *s) {
size_t len = strlen(s);
for (size_t i = 0; i < len; i++)
wt(s[i]);
}
template <typename T> void wt_integer(T x) {
if (por > SZ - 100)
flush();
if (x < 0) {
obuf[por++] = '-', x = -x;
}
int outi;
for (outi = 96; x >= 10000; outi -= 4) {
memcpy(out + outi, pre.num[x % 10000], 4);
x /= 10000;
}
if (x >= 1000) {
memcpy(obuf + por, pre.num[x], 4);
por += 4;
} else if (x >= 100) {
memcpy(obuf + por, pre.num[x] + 1, 3);
por += 3;
} else if (x >= 10) {
int q = (x * 103) >> 10;
obuf[por] = q | '0';
obuf[por + 1] = (x - q * 10) | '0';
por += 2;
} else
obuf[por++] = x | '0';
memcpy(obuf + por, out + outi + 4, 96 - outi);
por += 96 - outi;
}
template <typename T> void wt_real(T x) {
ostringstream oss;
oss << fixed << setprecision(15) << double(x);
string s = oss.str();
wt(s);
}
void wt(int x) {
wt_integer(x);
}
void wt(ll x) {
wt_integer(x);
}
void wt(i128 x) {
wt_integer(x);
}
void wt(uint x) {
wt_integer(x);
}
void wt(ull x) {
wt_integer(x);
}
void wt(u128 x) {
wt_integer(x);
}
void wt(double x) {
wt_real(x);
}
void wt(long double x) {
wt_real(x);
}
template <class T, class U> void wt(const pair<T, U> val) {
wt(val.first);
wt(' ');
wt(val.second);
}
template <size_t N = 0, typename T> void wt_tuple(const T t) {
if constexpr (N < std::tuple_size<T>::value) {
if constexpr (N > 0) {
wt(' ');
}
const auto x = std::get<N>(t);
wt(x);
wt_tuple<N + 1>(t);
}
}
template <class... T> void wt(tuple<T...> tpl) {
wt_tuple(tpl);
}
template <class T, size_t S> void wt(const array<T, S> val) {
auto n = val.size();
for (size_t i = 0; i < n; i++) {
if (i)
wt(' ');
wt(val[i]);
}
}
template <class T> void wt(const vector<T> val) {
auto n = val.size();
for (size_t i = 0; i < n; i++) {
if (i)
wt(' ');
wt(val[i]);
}
}
void print() {
wt('\n');
}
template <class Head, class... Tail> void print(Head &&head, Tail &&...tail) {
wt(head);
if (sizeof...(Tail))
wt(' ');
print(forward<Tail>(tail)...);
}
void __attribute__((destructor)) _d() {
flush();
}
} // namespace fastio
using fastio::flush;
using fastio::print;
using fastio::read;
inline void first(bool i = true) {
print(i ? "first" : "second");
}
inline void Alice(bool i = true) {
print(i ? "Alice" : "Bob");
}
inline void Takahashi(bool i = true) {
print(i ? "Takahashi" : "Aoki");
}
inline void yes(bool i = true) {
print(i ? "yes" : "no");
}
inline void Yes(bool i = true) {
print(i ? "Yes" : "No");
}
inline void No() {
print("No");
}
inline void YES(bool i = true) {
print(i ? "YES" : "NO");
}
inline void NO() {
print("NO");
}
inline void Yay(bool i = true) {
print(i ? "Yay!" : ":(");
}
inline void Possible(bool i = true) {
print(i ? "Possible" : "Impossible");
}
inline void POSSIBLE(bool i = true) {
print(i ? "POSSIBLE" : "IMPOSSIBLE");
}
/**
* @brief Fast IO
*/
// // 3 "sol.cpp"
template <unsigned mod = 1000000007> struct fp {
unsigned v;
static constexpr int get_mod() {
return mod;
}
constexpr unsigned inv() const {
assert(v != 0);
int x = v, y = mod, p = 1, q = 0, t = 0, tmp = 0;
while (y > 0) {
t = x / y;
x -= t * y, p -= t * q;
tmp = x, x = y, y = tmp;
tmp = p, p = q, q = tmp;
}
if (p < 0)
p += mod;
return p;
}
constexpr fp(ll x = 0) : v(x >= 0 ? x % mod : (mod - (-x) % mod) % mod) {}
fp operator-() const {
return fp() - *this;
}
fp pow(ull t) {
fp res = 1, b = *this;
while (t) {
if (t & 1)
res *= b;
b *= b;
t >>= 1;
}
return res;
}
fp &operator+=(const fp &x) {
if ((v += x.v) >= mod)
v -= mod;
return *this;
}
fp &operator-=(const fp &x) {
if ((v += mod - x.v) >= mod)
v -= mod;
return *this;
}
fp &operator*=(const fp &x) {
v = ull(v) * x.v % mod;
return *this;
}
fp &operator/=(const fp &x) {
v = ull(v) * x.inv() % mod;
return *this;
}
fp operator+(const fp &x) const {
return fp(*this) += x;
}
fp operator-(const fp &x) const {
return fp(*this) -= x;
}
fp operator*(const fp &x) const {
return fp(*this) *= x;
}
fp operator/(const fp &x) const {
return fp(*this) /= x;
}
bool operator==(const fp &x) const {
return v == x.v;
}
bool operator!=(const fp &x) const {
return v != x.v;
}
friend istream &operator>>(istream &is, fp &x) {
return is >> x.v;
}
friend ostream &operator<<(ostream &os, const fp &x) {
return os << x.v;
}
};
template <unsigned mod> void rd(fp<mod> &x) {
fastio::rd(x.v);
}
template <unsigned mod> void wt(fp<mod> x) {
fastio::wt(x.v);
}
template <typename T> T Inv(ll n) {
static int md;
static vector<T> buf({0, 1});
if (md != T::get_mod()) {
md = T::get_mod();
buf = vector<T>({0, 1});
}
assert(n > 0);
n %= md;
while (SZ(buf) <= n) {
int k = SZ(buf), q = (md + k - 1) / k;
buf.push_back(buf[k * q - md] * q);
}
return buf[n];
}
template <typename T> T Fact(ll n, bool inv = 0) {
static int md;
static vector<T> buf({1, 1}), ibuf({1, 1});
if (md != T::get_mod()) {
md = T::get_mod();
buf = ibuf = vector<T>({1, 1});
}
assert(n >= 0 and n < md);
while (SZ(buf) <= n) {
buf.push_back(buf.back() * SZ(buf));
ibuf.push_back(ibuf.back() * Inv<T>(SZ(ibuf)));
}
return inv ? ibuf[n] : buf[n];
}
template <typename T> T nPr(int n, int r, bool inv = 0) {
if (n < 0 || n < r || r < 0)
return 0;
return Fact<T>(n, inv) * Fact<T>(n - r, inv ^ 1);
}
template <typename T> T nCr(int n, int r, bool inv = 0) {
if (n < 0 || n < r || r < 0)
return 0;
return Fact<T>(n, inv) * Fact<T>(r, inv ^ 1) * Fact<T>(n - r, inv ^ 1);
}
// sum = n, r tuples
template <typename T> T nHr(int n, int r, bool inv = 0) {
return nCr<T>(n + r - 1, r - 1, inv);
}
// sum = n, a nonzero tuples and b tuples
template <typename T> T choose(int n, int a, int b) {
if (n == 0)
return !a;
return nCr<T>(n + b - 1, a + b - 1);
}
namespace Random {
mt19937_64 randgen(chrono::steady_clock::now().time_since_epoch().count());
using u64 = unsigned long long;
u64 get() {
return randgen();
}
template <typename T> T get(T L) { // [0,L]
return get() % (L + 1);
}
template <typename T> T get(T L, T R) { // [L,R]
return get(R - L) + L;
}
double uniform() {
return double(get(1000000000)) / 1000000000;
}
string str(int n) {
string ret;
rep(i, 0, n) ret += get('a', 'z');
return ret;
}
template <typename Iter> void shuffle(Iter first, Iter last) {
if (first == last)
return;
int len = 1;
for (auto it = first + 1; it != last; it++) {
len++;
int j = get(0, len - 1);
if (j != len - 1)
iter_swap(it, first + j);
}
}
template <typename T> vector<T> select(int n, T L, T R) { // [L,R]
if (n * 2 >= R - L + 1) {
vector<T> ret(R - L + 1);
iota(ALL(ret), L);
shuffle(ALL(ret));
ret.resize(n);
return ret;
} else {
unordered_set<T> used;
vector<T> ret;
while (SZ(used) < n) {
T x = get(L, R);
if (!used.count(x)) {
used.insert(x);
ret.push_back(x);
}
}
return ret;
}
}
void relabel(int n, vector<pair<int, int>> &es) {
shuffle(ALL(es));
vector<int> ord(n);
iota(ALL(ord), 0);
shuffle(ALL(ord));
for (auto &[u, v] : es)
u = ord[u], v = ord[v];
}
template <bool directed, bool simple> vector<pair<int, int>> genGraph(int n) {
vector<pair<int, int>> cand, es;
rep(u, 0, n) rep(v, 0, n) {
if (simple and u == v)
continue;
if (!directed and u > v)
continue;
cand.push_back({u, v});
}
int m = get(SZ(cand));
vector<int> ord;
if (simple)
ord = select(m, 0, SZ(cand) - 1);
else {
rep(_, 0, m) ord.push_back(get(SZ(cand) - 1));
}
for (auto &i : ord)
es.push_back(cand[i]);
relabel(n, es);
return es;
}
vector<pair<int, int>> genTree(int n) {
vector<pair<int, int>> es;
rep(i, 1, n) es.push_back({get(i - 1), i});
relabel(n, es);
return es;
}
}; // namespace Random
template <typename T> struct Frac {
T a, b;
Frac(T _a = 0) {
init(_a, 1);
}
Frac(T _a, T _b) {
init(_a, _b);
}
Frac &init(T _a, T _b) {
T g = gcd(_a, _b);
a = _a / g, b = _b / g;
if (b < 0)
a = -a, b = -b;
return *this;
}
Frac inv() const {
return Frac(b, a);
}
Frac operator-() const {
return Frac(-a, b);
}
Frac &operator+=(const Frac &x) {
return init(a * x.b + x.a * b, b * x.b);
}
Frac &operator-=(const Frac &x) {
return init(a * x.b - x.a * b, b * x.b);
}
Frac &operator*=(const Frac &x) {
return init(a * x.a, b * x.b);
}
Frac &operator/=(const Frac &x) {
return init(a * x.b, b * x.a);
}
Frac operator+(const Frac &x) const {
return Frac(*this) += x;
}
Frac operator-(const Frac &x) const {
return Frac(*this) -= x;
}
Frac operator*(const Frac &x) const {
return Frac(*this) *= x;
}
Frac operator/(const Frac &x) const {
return Frac(*this) /= x;
}
bool operator<(const Frac &x) const {
return a * x.b < b * x.a;
}
bool operator>(const Frac &x) const {
return x < *this;
}
bool operator<=(const Frac &x) const {
return !(x < *this);
}
bool operator>=(const Frac &x) const {
return !(*this < x);
}
bool operator==(const Frac &x) const {
return (*this <= x and x <= *this);
}
bool operator!=(const Frac &x) const {
return !(*this == x);
}
friend istream &operator>>(istream &is, Frac &x) {
return is >> x.a >> x.b;
}
friend ostream &operator<<(ostream &os, const Frac &x) {
return os << x.a << '/' << x.b;
}
};
template <typename T> Frac<T> between(const Frac<T> &x, const Frac<T> &y) {
if (x.a < x.b and y.b < y.a)
return Frac(1);
else if (x.b <= x.a) {
T add = floor(x.a / x.b);
return between(x - add, y - add) + add;
} else
return between(y.inv(), x.inv()).inv();
}
template <typename T> struct Surreal {
static constexpr int LG = std::numeric_limits<T>::digits - 2;
Frac<T> a;
Surreal(T a = 0) : a(a, 1) {}
Surreal(T a, T b) : a(a, b) {}
Surreal(Frac<T> a) : a(a) {}
static constexpr Surreal infty() {
return Surreal(INF, 1);
}
bool operator==(Surreal const &rhs) const {
return (a == rhs.a);
}
bool operator!=(Surreal const &rhs) const {
return !(a == rhs);
}
bool operator<(Surreal const &rhs) const {
return (a < rhs.a);
}
bool operator<=(Surreal const &rhs) const {
return (a <= rhs.a);
}
bool operator>(Surreal const &rhs) const {
return (a > rhs.a);
}
bool operator>=(Surreal const &rhs) const {
return (a >= rhs.a);
}
friend Surreal operator+(const Surreal &x, const Surreal &y) {
return x.a + y.a;
}
friend Surreal operator-(const Surreal &x, const Surreal &y) {
return x.a - y.a;
}
friend Surreal operator-(const Surreal &x) {
return -x.a;
}
Surreal &operator+=(const Surreal &x) {
return (*this) = (*this) + x;
}
Surreal &operator-=(const Surreal &x) {
return (*this) = (*this) - x;
}
static Surreal between(Surreal L, Surreal R, bool incL = 0, bool incR = 0) {
Surreal ret(0);
if (L < ret or (incL and L == ret)) {
if (ret < R or (incR and R == ret)) {
return ret;
}
}
bool sign = 0;
if (R <= 0) {
sign = 1;
swap(L, R);
swap(incL, incR);
L = -L, R = -R;
}
rep(lg, 0, LG + 1) {
ll num = ceil(L.a.a << lg, L.a.b);
if ((i128(L.a.a) << lg) == i128(L.a.b) * num and !incL)
num++;
ret = Surreal(num, 1LL << lg);
if (ret < R or (incR and R == ret)) {
if (sign)
ret = -ret;
return ret;
}
}
assert(0);
}
friend ostream &operator<<(ostream &os, const Surreal &x) {
return os << x.a;
}
};
struct NumStar {
using A = Surreal<ll>;
A a;
int b;
NumStar(A a = 0, int b = 0) : a(a), b(b) {}
NumStar &operator+=(const NumStar &rhs) {
a += rhs.a, b ^= rhs.b;
return *this;
}
NumStar &operator-=(const NumStar &rhs) {
a -= rhs.a, b ^= rhs.b;
return *this;
}
NumStar operator-() const {
return NumStar(-a, b);
}
bool operator==(const NumStar &rhs) const {
return (a == rhs.a && b == rhs.b);
}
static int mex(vector<int> &a) {
vector<int> exi(SZ(a) + 1);
for (auto &x : a)
exi[x] = 1;
int ret = 0;
while (exi[ret])
ret++;
return ret;
}
static pair<bool, NumStar> calc(vector<NumStar> lb, vector<NumStar> rb) {
A L = -A::infty(), R = A::infty();
vector<int> ls, rs;
for (auto &num : lb) {
if (chmax(L, num.a))
ls.clear();
if (L == num.a)
ls.push_back(num.b);
}
for (auto &num : rb) {
if (chmin(R, num.a))
rs.clear();
if (R == num.a)
rs.push_back(num.b);
}
int lm = mex(ls), rm = mex(rs);
if (L < R) {
return {true, NumStar(A::between(L, R, lm == 0, rm == 0), 0)};
} else if (L == R) {
if (lm == rm)
return {true, NumStar(L, lm)};
}
return {false, NumStar()};
}
friend ostream &operator<<(ostream &os, const NumStar &x) {
return os << x.a << "+*" << x.b;
}
pair<bool, bool> outcome() {
if (a > 0)
return {1, 0};
if (a < 0)
return {0, 1};
if (b == 0)
return {0, 0};
return {1, 1};
}
};
// F(G):= {G_L,G_R} (pair)
template <typename State, typename F>
map<State, NumStar> SolvePartizanGame(const vector<State> &states, F option) {
map<State, NumStar> ret;
auto dfs = [&](auto &dfs, const State ¤t) -> pair<bool, NumStar> {
if (ret.count(current))
return {true, ret[current]};
auto [gl, gr] = option(current);
vector<NumStar> ls, rs;
for (auto &to : gl) {
auto [ch, lv] = dfs(dfs, to);
if (!ch)
return {false, NumStar()};
ls.push_back(lv);
}
for (auto &to : gr) {
auto [ch, rv] = dfs(dfs, to);
if (!ch)
return {false, NumStar()};
rs.push_back(rv);
}
auto [ch, val] = NumStar::calc(ls, rs);
if (!ch)
return {false, NumStar()};
return {true, ret[current] = val};
};
for (auto &s : states) {
if (!dfs(dfs, s).first)
return map<State, NumStar>();
}
return ret;
}
vector<tuple<int,int,int>> line={{0,1,2},{3,4,5},{6,7,8},{0,3,6},{1,4,7},{2,5,8},{0,4,8},{2,4,6}};
bool ch(string& s){
for(auto& [i,j,k]:line)if(s[i]!='.' and s[i]==s[j] and s[j]==s[k]){
return false;
}
return true;
}
int main() {
vector<string> states;
auto dfs=[&](auto& dfs,int i,string s)->void{
if(i==9){
states.push_back(s);
return;
}
string t;
t=s+'.';
dfs(dfs,i+1,t);
t=s+'o';
dfs(dfs,i+1,t);
t=s+'x';
dfs(dfs,i+1,t);
};
string init;
dfs(dfs,0,init);
auto move=[&](string s)->pair<vector<string>,vector<string>>{
vector<string> L,R;
if(!ch(s)){
return {L,R};
}
rep(i,0,9)if(s[i]=='.'){
string t=s;
t[i]='x';
if(ch(t))L.push_back(t);
t[i]='o';
if(ch(t))R.push_back(t);
}
return {L,R};
};
auto ret=SolvePartizanGame(states,move);
int T;
read(T);
while(T--){
int n;
read(n);
NumStar sum;
rep(_,0,n){
string s;
rep(__,0,3){
string t;
read(t);
s+=t;
}
sum+=ret[s];
}
// show(sum);
Alice(sum.outcome().first);
}
return 0;
}
这程序好像有点Bug,我给组数据试试?
詳細信息
Test #1:
score: 100
Accepted
time: 35ms
memory: 5836kb
input:
4 1 ... ... ... 1 ... oo. oo. 2 ... oo. oo. ... xx. xx. 2 ..x xo. ... xo. o.. .x.
output:
Alice Alice Bob Bob
result:
ok 4 tokens
Test #2:
score: 0
Accepted
time: 61ms
memory: 6092kb
input:
100000 1 ... .x. .o. 1 oox xx. o.x 1 .o. .x. .ox 1 .oo .x. ..o 1 .ox .oo x.x 1 ... ... o.x 1 x.. o.o o.. 1 o.x x.o o.. 1 .oo .xo .ox 1 o.o xo. ..x 1 ..o oxx xxo 1 xx. xxo .oo 1 xox xoo oxx 1 xx. o.o ..o 1 xo. oxo oo. 1 xx. .ox o.x 1 .xx ... xx. 1 xoo oxx o.. 1 .xo o.x ox. 1 xoo oox ... 1 x.o xxo .x....
output:
Alice Bob Bob Alice Alice Alice Alice Alice Bob Alice Bob Bob Bob Alice Alice Bob Bob Bob Alice Alice Bob Alice Alice Alice Bob Alice Bob Alice Alice Bob Alice Alice Alice Alice Bob Bob Bob Alice Bob Bob Alice Alice Bob Bob Bob Alice Alice Bob Bob Alice Bob Bob Bob Bob Alice Alice Alice Alice Alice ...
result:
ok 100000 tokens
Test #3:
score: 0
Accepted
time: 60ms
memory: 6092kb
input:
50000 2 o.. o.. xxo x.x oxo ..o 2 x.x oxo o.o .xx ..o ... 2 ... xxo ox. o.. ox. ... 2 .o. oxx ..o o.o ox. .o. 2 xx. .o. .oo xx. oox .x. 2 xxo oxo xo. o.. xxo oxx 2 .xx oo. o.o ox. ... xoo 2 xxo o.x xx. x.. oxx o.o 2 x.. x.. o.o .x. .xx .oo 2 oo. x.. oo. oox xox ox. 2 .oo o.x ..o .ox ..x ....
output:
Bob Bob Bob Alice Bob Bob Alice Bob Alice Alice Alice Alice Bob Alice Alice Alice Bob Bob Alice Alice Alice Alice Bob Alice Bob Alice Alice Bob Alice Alice Alice Bob Bob Alice Bob Bob Bob Bob Alice Alice Alice Bob Alice Bob Alice Bob Bob Bob Alice Alice Bob Alice Bob Alice Alice Alice Alice Alice Al...
result:
ok 50000 tokens
Test #4:
score: 0
Accepted
time: 54ms
memory: 6092kb
input:
50000 2 oxx x.x .xo ..x xx. .xo 2 .ox x.. o.o xo. x.o oo. 2 ox. xxo o.x .oo o.o x.. 2 oxx o.x x.. .xx x.x .xo 2 .ox .o. ..x ..o oxx xo. 2 .oo .xo oxx .ox o.x .o. 2 .x. ox. .o. oo. xxo xo. 2 ..o .xo x.x oxx ..o oo. 2 x.o .oo xx. .oo ox. oo. 2 o.x x.x oxo xo. .o. .x. 2 o.x oo. .xx xoo oxx x...
output:
Bob Alice Alice Bob Bob Bob Bob Alice Alice Bob Bob Alice Alice Bob Alice Bob Alice Bob Alice Alice Bob Alice Alice Alice Alice Bob Alice Alice Alice Alice Bob Alice Bob Alice Bob Alice Alice Alice Alice Alice Alice Alice Alice Alice Bob Alice Bob Bob Bob Bob Bob Bob Bob Alice Alice Bob Alice Alice ...
result:
ok 50000 tokens
Test #5:
score: 0
Accepted
time: 57ms
memory: 6092kb
input:
50000 2 o.. x.x x.o x.x ..o oxo 2 .x. o.. ..o .xo x.o .x. 2 oo. o.o .o. .o. .xx ..o 2 .x. ... x.. .xo xox ..x 2 ... ..o ... .xo x.. x.o 2 xx. x.o ..o xx. ..o x.o 2 o.. ..o .xx x.x ... oxx 2 xx. xox oox .o. ... .oo 2 .xo .ox xo. xx. ox. x.o 2 xx. o.x oxo xo. .xo ... 2 ..x oox ..o xxo ..o ....
output:
Bob Alice Alice Bob Alice Bob Bob Alice Bob Bob Alice Alice Bob Alice Alice Alice Bob Alice Alice Bob Alice Alice Bob Bob Alice Alice Bob Alice Alice Alice Bob Alice Alice Bob Alice Bob Bob Alice Bob Bob Alice Bob Alice Alice Alice Bob Bob Alice Bob Alice Alice Bob Bob Alice Bob Alice Alice Bob Alic...
result:
ok 50000 tokens
Test #6:
score: 0
Accepted
time: 62ms
memory: 5984kb
input:
33333 3 ... o.x ..x ..o oxx ..o ... .xx .oo 3 .x. oo. x.. ox. xo. oxx oxo oxo x.x 3 .o. o.. .xx xoo oox x.o oxo x.x x.x 3 ..x x.. xox x.x x.x oo. oox xoo x.x 3 .xx .oo o.. xx. oxx .oo .xx xoo ... 3 ..o xo. xx. .ox ... xxo ... x.. .ox 3 x.x o.x .oo oo. .o. .xx ... o.. .oo 3 xx. ..x xo. ...
output:
Bob Bob Bob Bob Alice Bob Alice Bob Alice Alice Bob Alice Alice Bob Bob Bob Bob Bob Bob Bob Bob Alice Bob Bob Bob Alice Bob Bob Bob Alice Bob Alice Bob Bob Bob Bob Alice Bob Alice Bob Alice Bob Bob Bob Bob Alice Alice Alice Bob Alice Alice Bob Bob Bob Alice Bob Alice Bob Alice Alice Alice Alice Alic...
result:
ok 33333 tokens
Test #7:
score: 0
Accepted
time: 58ms
memory: 5836kb
input:
33333 3 o.x ..x o.o o.x o.. xox xox x.o oxo 3 .x. .xo xox .o. .xo x.. .ox xx. ..x 3 .o. xx. o.x ... x.o xxo oo. x.o xo. 3 .xo oo. x.. .oo ..o xo. ..x .oo xx. 3 oxx xox .x. .oo oxo o.. o.x ..o xo. 3 oox .xx ..o o.x xoo .x. ..o o.o oox 3 xxo ... ox. oox o.. xxo .oo xxo o.x 3 ..x x.o o.. ...
output:
Alice Bob Bob Alice Alice Alice Alice Alice Alice Alice Alice Bob Bob Bob Alice Bob Alice Alice Bob Alice Alice Alice Bob Alice Alice Bob Alice Alice Bob Bob Bob Alice Alice Bob Alice Alice Bob Alice Alice Bob Bob Alice Alice Alice Bob Bob Alice Bob Bob Alice Bob Bob Alice Alice Bob Bob Alice Bob Bo...
result:
ok 33333 tokens
Test #8:
score: 0
Accepted
time: 61ms
memory: 6092kb
input:
33333 3 xxo oo. .xo o.x x.x x.o o.o xx. oo. 3 .xo x.o .ox xox ..o ... .o. xx. oxx 3 .xo .x. oo. .ox ... oxo oox .x. ox. 3 ..x .xx ..o ..o oo. xxo x.x ox. oo. 3 .o. o.x o.x o.. x.o oo. ox. o.. xo. 3 .xo x.. ..o .oo o.o oo. o.x .ox x.. 3 o.x xox xo. ..x x.o xox xxo .o. ... 3 ... o.. oox ...
output:
Alice Bob Alice Bob Alice Alice Alice Bob Alice Alice Alice Alice Alice Alice Bob Bob Bob Bob Alice Alice Bob Alice Alice Bob Bob Bob Alice Bob Bob Alice Bob Alice Alice Alice Alice Bob Alice Alice Bob Bob Bob Bob Alice Alice Bob Bob Bob Bob Alice Bob Bob Bob Alice Alice Bob Bob Alice Alice Alice Bo...
result:
ok 33333 tokens
Test #9:
score: 0
Accepted
time: 58ms
memory: 5984kb
input:
25000 4 .x. xx. .ox xxo .x. xo. x.. o.x x.x o.x .o. o.. 4 x.x xoo .xo x.o .o. .ox o.. xx. xx. x.. x.o .x. 4 o.o .x. ..o ..x ..o .xx x.x .x. ..o .xo x.. .ox 4 oox xx. oox x.. .xx .xo .x. oo. .xx ..o oox x.x 4 x.. x.x .x. .xo x.. xox o.o .x. x.. ..x .x. o.. 4 oo. xx. oxx xx. .ox .ox x...
output:
Bob Bob Bob Bob Bob Bob Bob Alice Alice Bob Alice Alice Alice Bob Bob Alice Alice Alice Alice Bob Alice Alice Alice Alice Bob Bob Bob Bob Bob Bob Bob Bob Alice Alice Alice Alice Bob Bob Bob Bob Alice Bob Bob Bob Alice Bob Alice Bob Alice Alice Bob Alice Alice Alice Alice Alice Bob Alice Alice Bob Bo...
result:
ok 25000 tokens
Test #10:
score: 0
Accepted
time: 58ms
memory: 6096kb
input:
25000 4 .o. xo. .x. o.. x.x x.o x.x xo. oxo o.. xoo ox. 4 .x. xo. o.o oxo xo. xox .xx ..x ox. .ox .oo o.x 4 oxo ... oxx o.x .x. .oo oox ox. ..x xo. o.. .ox 4 xo. oxo x.o o.x oo. .x. .oo .xx x.o .oo o.. oox 4 ..x x.o xoo oox ..o .oo o.o xo. x.. ..x oo. .xo 4 ox. ..x o.. o.x ... ... ....
output:
Alice Alice Bob Alice Alice Alice Alice Bob Bob Bob Alice Alice Alice Bob Bob Bob Alice Alice Bob Bob Bob Bob Alice Bob Bob Bob Alice Bob Alice Bob Bob Bob Alice Bob Bob Alice Alice Alice Alice Alice Bob Bob Bob Bob Alice Alice Bob Alice Bob Alice Bob Bob Bob Alice Bob Bob Bob Bob Alice Bob Bob Alic...
result:
ok 25000 tokens
Test #11:
score: 0
Accepted
time: 59ms
memory: 6096kb
input:
25000 4 xo. o.o .ox o.o .oo xo. .xx oox xxo ox. xo. .ox 4 x.. .ox ..o xx. x.o o.x oxo .xo ..x o.o .ox xo. 4 oxo o.x ..o xx. o.o .xo .ox ..x oo. .ox ox. oo. 4 .o. o.. .xo o.o xx. ... .x. ox. xoo oxx x.o .xx 4 .o. o.. .xx .xx .ox .xo xoo x.x .xo xx. oxx ..o 4 o.. xxo x.o oxo .xx ..x x...
output:
Alice Alice Alice Bob Bob Bob Bob Bob Bob Bob Bob Bob Bob Bob Alice Bob Bob Bob Bob Alice Bob Alice Bob Bob Alice Bob Alice Bob Bob Alice Alice Alice Alice Bob Bob Bob Bob Bob Bob Bob Alice Bob Bob Bob Alice Bob Alice Alice Alice Bob Alice Bob Alice Alice Alice Bob Bob Alice Alice Bob Bob Alice Bob ...
result:
ok 25000 tokens
Test #12:
score: 0
Accepted
time: 59ms
memory: 6096kb
input:
20000 5 xx. .xx .o. x.x .ox ..o ... .xx xx. .o. oxo o.. x.. ... ..x 5 ..x .oo oo. o.. ..o .oo .oo x.. ox. xox oxx ... .xx .o. xox 5 .o. ... x.o oxo x.o ... oxx x.o oxo .xx oox xoo x.x ..o .ox 5 xxo .ox xxo o.. xxo x.x o.o ..o .xx .x. oox .xo .o. .xx .xx 5 .o. ..x .xo .oo x.. o.o o....
output:
Bob Alice Alice Bob Alice Alice Alice Bob Alice Alice Alice Bob Bob Alice Bob Bob Bob Bob Bob Bob Alice Bob Bob Bob Bob Bob Bob Alice Bob Alice Bob Alice Alice Alice Bob Bob Alice Alice Bob Bob Bob Bob Alice Alice Bob Alice Alice Alice Alice Bob Bob Bob Bob Bob Bob Bob Bob Alice Bob Bob Bob Alice Al...
result:
ok 20000 tokens
Test #13:
score: 0
Accepted
time: 58ms
memory: 6048kb
input:
20000 5 oxx o.. .oo o.. xo. .x. .o. oox xxo x.o oo. xo. o.. x.. .xo 5 x.o oxx xo. .ox o.o xoo oox ..o .oo oxo xxo ..x .ox oxo .oo 5 ..o o.x oox oxo xo. .xx .ox .xo ..x .oo xx. x.o xoo o.. x.x 5 ..x .x. oox ... oox .x. .o. ox. xox x.o xo. .xo xxo xox ..o 5 o.. xxo .oo ..x xx. .xo ox...
output:
Alice Bob Bob Bob Bob Alice Alice Alice Alice Alice Alice Alice Alice Alice Alice Bob Alice Bob Alice Alice Bob Alice Bob Alice Bob Bob Alice Bob Alice Bob Alice Alice Alice Alice Bob Alice Alice Alice Alice Alice Bob Bob Bob Alice Bob Bob Bob Bob Alice Bob Alice Alice Alice Alice Bob Alice Bob Bob ...
result:
ok 20000 tokens
Test #14:
score: 0
Accepted
time: 56ms
memory: 6092kb
input:
20000 5 xo. ..o .o. o.. ox. x.x ..x xxo .oo xo. ..x xo. oo. o.x x.o 5 xx. .ox x.. xo. xoo ..x x.. x.o .o. ox. xx. xo. .oo oox xxo 5 .xo xoo xox ... oo. .o. x.. oox o.. .o. .xo ... xo. o.o xxo 5 o.x o.o ..x oxo o.x xxo oo. oxx .o. .xo xo. .ox .oo oxx ..x 5 .x. x.x x.x oxo .xx x.. o....
output:
Bob Bob Alice Alice Bob Alice Alice Alice Alice Alice Bob Alice Bob Bob Bob Bob Bob Bob Alice Alice Bob Alice Bob Bob Alice Bob Bob Alice Alice Alice Alice Bob Bob Bob Alice Alice Alice Alice Alice Alice Bob Alice Alice Bob Bob Alice Bob Alice Bob Bob Bob Bob Alice Alice Alice Alice Alice Alice Bob ...
result:
ok 20000 tokens
Test #15:
score: 0
Accepted
time: 57ms
memory: 5968kb
input:
10000 9 o.. x.o x.o .ox x.x x.. oxo ... xo. o.. x.. o.o .oo x.x ox. ... ..o ox. ... xxo ..x .ox oxo oo. oox .xo ox. 37 ... ..x ... .x. ..x xox oo. .xx xxo .o. xxo xox o.o ..o oox ..x ox. .oo .x. xoo x.o .xx xo. ox. xxo x.o ox. ..x .oo o.. x.. ..o x.. xox o.o ..o ..o ox. ... .xx ...
output:
Alice Alice Bob Alice Alice Alice Bob Alice Bob Alice Bob Bob Bob Alice Bob Alice Alice Bob Bob Bob Bob Bob Alice Bob Bob Alice Alice Bob Alice Bob Bob Alice Bob Bob Bob Alice Alice Alice Bob Alice Bob Bob Alice Bob Bob Bob Bob Alice Bob Bob Bob Bob Bob Bob Bob Bob Bob Alice Alice Bob Bob Bob Alice ...
result:
ok 10000 tokens
Test #16:
score: 0
Accepted
time: 59ms
memory: 5960kb
input:
1000 387 xo. xo. .xo ..x x.x .xo xox x.o .ox x.o .o. .o. x.. .x. ... oo. x.x ox. o.. xo. x.. .xo .x. .o. .x. oxo .oo xxo ..x .x. o.o x.x .x. oo. x.. o.. ..x ox. o.x o.. .o. ... xoo oo. x.. xoo .xo .x. .oo oxo xo. ... x.x ox. xx. .xo xo. o.. o.x .xx .xo .oo ..x xoo xxo ... .ox o...
output:
Bob Bob Alice Alice Alice Alice Bob Alice Alice Alice Alice Bob Bob Alice Alice Bob Bob Bob Bob Alice Alice Bob Alice Alice Alice Bob Bob Alice Bob Alice Bob Bob Alice Bob Alice Bob Alice Bob Bob Alice Alice Alice Bob Bob Bob Bob Alice Alice Alice Bob Alice Alice Alice Bob Alice Alice Bob Bob Alice ...
result:
ok 1000 tokens
Test #17:
score: 0
Accepted
time: 58ms
memory: 5812kb
input:
100 2251 .x. ..x xx. oo. ox. .xx oo. x.. o.. .oo o.o oox x.. .ox ..o oxx .x. o.x o.o oox .x. .oo ... xx. x.o o.. .oo .xo xoo x.x oo. ... .ox ..x oo. xxo ..x ... o.. o.x x.o xo. o.o .oo .xx ..x .o. .oo oo. oox ..x xxo ... x.o o.. xo. ... o.. x.x x.x .xo .xx o.. ..x x.x x.o ox. x...
output:
Bob Bob Alice Bob Bob Alice Alice Bob Bob Alice Bob Alice Bob Bob Alice Alice Alice Alice Bob Alice Bob Bob Bob Bob Bob Bob Alice Bob Bob Bob Alice Alice Alice Bob Alice Bob Bob Alice Alice Alice Bob Bob Bob Alice Alice Bob Alice Bob Alice Alice Bob Alice Alice Bob Alice Alice Bob Alice Alice Bob Al...
result:
ok 100 tokens
Test #18:
score: 0
Accepted
time: 61ms
memory: 5916kb
input:
10 9468 .xo o.x ..x .xx x.. ..o .xx x.. o.. xoo ..x .o. oxx ..x xx. .x. xoo o.. .o. .ox xx. o.x ... oxx xxo oxx oo. ..o x.. xoo xo. .x. ..o oxo oxx x.x ... xoo oxx .xx o.o oox ... .xo o.x ... ..o ox. ..o o.x xoo ..x ..o x.. xx. x.o .x. .o. .xx oxo .xo ..x .x. x.. xx. .xo ... ox...
output:
Alice Alice Bob Alice Bob Bob Alice Bob Bob Bob
result:
ok 10 tokens
Test #19:
score: 0
Accepted
time: 58ms
memory: 5964kb
input:
1 100000 ... .xo x.x xx. oox o.. o.o x.o .ox .o. x.x oxo ..x x.o .ox xx. .xx .oo .xx x.o oxo xxo .ox .x. x.x .o. ... .xx oo. .xo ..x o.. ..o oxx xoo xox oxx xo. o.x .ox o.x xx. xxo x.o oox oo. ..x .xo xoo xxo .o. .x. ox. .ox oxo xx. x.o oox o.x xoo xox .o. o.. xo. oxo xx. oxo x...
output:
Bob
result:
ok "Bob"
Test #20:
score: 0
Accepted
time: 59ms
memory: 5964kb
input:
10000 10 xx. .x. .o. x.o oox xxo xx. o.. .xo xx. .ox o.x .xo .ox x.. xx. xoo oox o.. ... oxo xo. o.. .ox .o. x.. xoo x.x o.o o.o 10 .oo x.x ox. .o. oox ox. o.. oxo xo. o.. xo. .x. xo. .x. .oo .xx xx. ... ... .o. x.. xoo o.. o.x x.. .ox oxo .xo o.. .xx 10 xoo ..x oxo o.x o.o .o. ....
output:
Bob Bob Bob Bob Alice Alice Alice Alice Alice Bob Bob Bob Bob Alice Alice Bob Alice Bob Bob Bob Bob Bob Bob Bob Alice Alice Bob Alice Alice Bob Bob Bob Alice Bob Bob Bob Bob Alice Bob Alice Bob Alice Bob Bob Bob Bob Alice Alice Alice Bob Alice Alice Alice Alice Alice Bob Bob Bob Alice Bob Bob Alice ...
result:
ok 10000 tokens
Test #21:
score: 0
Accepted
time: 61ms
memory: 5964kb
input:
1000 100 x.x .xx o.o o.o xx. x.x .o. oxx x.. .xo x.. o.. .ox x.o oxx .x. x.o xx. xx. .oo o.. ..x .o. .ox o.. ..x .o. ..x xx. .xo x.. o.. xo. .oo xxo oo. ..x ..o ox. o.x xo. oo. oo. .xx .oo .o. x.. ..x ... .o. ... .xx x.. ..x xo. .oo o.. o.x ... .xx o.. ox. .x. o.o .oo xo. .xo x...
output:
Alice Bob Alice Bob Bob Alice Alice Alice Alice Bob Bob Bob Alice Bob Bob Alice Alice Alice Bob Bob Alice Alice Alice Bob Bob Alice Alice Alice Alice Alice Alice Alice Bob Alice Bob Alice Bob Bob Alice Bob Alice Alice Bob Alice Bob Bob Alice Alice Alice Alice Alice Alice Bob Bob Bob Bob Bob Bob Alic...
result:
ok 1000 tokens
Test #22:
score: 0
Accepted
time: 59ms
memory: 5964kb
input:
100 1000 ..o x.. xo. xxo .ox ..o oox x.o xo. xxo oox xo. .oo .ox ..o .ox ... .ox ..x xoo .xx .oo .xo xo. .x. ... .oo ox. .oo .xx o.o ..o oxx oxo o.o ... oo. oxx .o. ..o x.o oox .x. .xo o.o x.. x.. ..o .o. x.x x.. x.. .xx o.o .xo .o. x.. ..x .x. .x. .oo x.x xxo xox ..x x.o ... o...
output:
Alice Alice Bob Alice Alice Alice Alice Bob Alice Alice Alice Alice Bob Bob Bob Alice Alice Bob Alice Alice Alice Bob Bob Bob Bob Bob Alice Bob Bob Bob Bob Alice Bob Alice Alice Alice Alice Bob Alice Alice Alice Alice Alice Bob Bob Alice Alice Bob Alice Alice Bob Bob Bob Alice Alice Alice Bob Alice ...
result:
ok 100 tokens
Test #23:
score: 0
Accepted
time: 60ms
memory: 5960kb
input:
10 10000 oox ... x.x .oo .xo xo. .x. x.x x.x ..x o.. ..x .o. ... oo. ... xox xo. xoo .xx oo. xxo oox xo. oo. oxo .o. xx. .oo xox .oo oxx xxo .o. ox. .o. o.. .o. x.. oxx xx. oo. ox. xo. .x. o.. xxo oxo o.. ... xx. ..x oxo ..o .ox xo. xxo oxx oo. .xx o.o .oo x.. ... .o. ..o o.x x...
output:
Alice Alice Bob Bob Alice Alice Bob Bob Alice Bob
result:
ok 10 tokens
Test #24:
score: 0
Accepted
time: 62ms
memory: 5960kb
input:
1 100000 ..x xx. o.o o.o oxx xoo o.. xx. .xx x.. .oo .xx x.x o.. .xo o.. x.. oxx ... o.. xx. xo. oox oxo .xo o.o oo. xox .o. xx. ..x xoo .oo xoo oo. x.. .xo x.x o.x oox xo. .x. .ox x.o .xo xx. xoo o.o ox. xox oo. x.. .o. xx. xoo .xx oxo x.o o.x x.o .xx x.o ox. ox. x.. .x. .o. x...
output:
Bob
result:
ok "Bob"
Test #25:
score: 0
Accepted
time: 62ms
memory: 5964kb
input:
1 100000 xxo x.x oo. xx. ox. xoo .ox .xo o.. .x. x.. x.o oxx x.o ox. xx. x.. o.o o.o xo. .x. xo. xox o.. oo. .xo xoo ... xo. oxx ..o ..o .x. ..o xo. x.o .oo xx. o.. xx. .ox oxx ... xxo x.x xxo o.. xxo ox. o.x xo. x.x .xo .x. x.x xo. ... xxo oxo x.. xoo o.. .xx .xx ... .ox .o. o...
output:
Bob
result:
ok "Bob"
Test #26:
score: 0
Accepted
time: 61ms
memory: 5964kb
input:
1 100000 .oo .x. x.o oox ..x x.. x.o .oo x.x xxo oxx xoo .o. oxo xoo .o. .xo xo. ..o .xo .ox x.o oxx .xo .oo o.x o.o .o. o.. x.x xx. ..o ox. ..o x.. .oo xo. xo. ..x .x. o.x o.. ..o .oo .xx xx. xo. ..o x.x xo. oxo ... ..x oo. xx. .xo ... oxo oo. x.x xoo xox .xo oo. .ox o.x ... x...
output:
Alice
result:
ok "Alice"
Test #27:
score: 0
Accepted
time: 58ms
memory: 5792kb
input:
1 100000 .oo o.x xoo xx. o.. x.x .xx xoo ..o ... o.. .oo oo. .o. o.. o.x .x. oxx .xx .o. .o. o.x x.o ..o ..o xoo xx. oxo xx. ..o .x. x.o oox .o. .ox x.x .xo x.o xox ox. oo. ... ox. .xx ..o .xo o.. oo. .xo .xx x.x ... ox. x.x ox. .x. .ox .o. ..x xox .o. .x. .o. .o. xoo x.x x.. o...
output:
Alice
result:
ok "Alice"
Test #28:
score: 0
Accepted
time: 57ms
memory: 5820kb
input:
1 100000 xoo xo. .xx .xx o.o ox. .xo ... o.x o.. ox. xoo oxo xo. xox x.. .x. oo. .xx o.. .o. .ox ..o x.o o.x ... xxo .oo .x. oox o.. .x. ox. ..o .ox x.. oxo ..x .xo o.. x.x oxo .xo ..x ox. oox ..x .xo xxo x.o .o. .o. ox. x.o ..x .o. o.. ..o o.x .x. o.o xox x.x oox x.o xox x.o x...
output:
Alice
result:
ok "Alice"
Test #29:
score: 0
Accepted
time: 55ms
memory: 5732kb
input:
1 100000 xox o.o oox xo. o.. xo. o.x o.x xoo o.x ox. .oo ..o xx. ..o xx. .ox o.. o.. x.x ... oox xxo o.. ..x o.x .o. xoo ..x o.x oxx .x. .oo x.. x.o ox. ..o ..x xo. ... .ox xox x.. .o. .xo oxx x.o x.o ..x .o. x.. xoo xxo ox. .o. oxx ... .o. o.x .ox x.. oox o.x o.x oox xx. o.o o...
output:
Alice
result:
ok "Alice"
Test #30:
score: 0
Accepted
time: 55ms
memory: 5964kb
input:
1 100000 .o. ... xo. xx. .oo .ox oox oo. x.x .xo ..x ox. xxo x.. .xo o.x .x. oox ... ox. oxo ox. o.x ... o.x ..x xoo xo. ..o .ox o.o xoo x.x .x. xo. oxx oxx xox x.. xox o.o .o. x.o o.x oxx oo. xxo xxo ... .o. .x. .o. ox. xxo .ox x.. oxo ox. o.x .x. xoo o.o oox xoo .x. xxo oxo ....
output:
Bob
result:
ok "Bob"
Test #31:
score: 0
Accepted
time: 57ms
memory: 5800kb
input:
1 100000 ..o ... .x. xoo o.o ..x ..o xox x.o xoo ..o oox o.. oxo x.o .x. x.o xoo oxx ..o xo. xxo o.. oxx .xo o.x xox ..o .o. x.. o.. ox. xoo oxo o.x xo. xxo .xx .oo xx. .x. .oo ox. .x. .ox xxo x.. ox. .ox xox x.. xxo o.x ox. oxo oxx ..o x.. ..o .xo .x. o.x o.. xoo ... o.x oxx ....
output:
Bob
result:
ok "Bob"
Test #32:
score: 0
Accepted
time: 50ms
memory: 5836kb
input:
1 100000 .xx .xx ... x.. .xx xx. xx. xx. ... .xx x.. x.x x.x x.x .x. ..x xx. .xx .x. .xx x.x ... xx. xx. .xx xx. ..x ..x xx. .xx ..x xx. .xx x.x x.x .x. xx. ..x xx. xx. .xx x.. .x. xx. x.x x.x ..x xx. x.x ... x.x .x. x.x x.x ... xx. xx. x.. .xx xx. x.x .xx .x. x.. .xx xx. .x. x...
output:
Bob
result:
ok "Bob"
Test #33:
score: 0
Accepted
time: 48ms
memory: 5964kb
input:
1 100000 oo. ..o o.o .o. .oo o.o o.o oo. .o. o.o ..o oo. ... oo. oo. .o. oo. o.o o.o o.o .o. o.o oo. .o. .oo oo. ..o oo. oo. ... o.. .oo oo. o.. .oo oo. .o. oo. o.o .o. oo. o.o o.o oo. .o. o.o oo. .o. oo. ..o o.o oo. ..o o.o .oo .oo ... .o. .oo o.o oo. ..o o.o o.o .oo .o. .oo o...
output:
Alice
result:
ok "Alice"
Test #34:
score: 0
Accepted
time: 49ms
memory: 5708kb
input:
1 100000 xx. xx. ... o.o ..o oo. xx. xx. ... ... .xx .xx x.x ..x xx. .x. x.x x.x .xx .xx ... o.. .oo oo. oo. ..o o.o o.o o.. .oo o.o ..o oo. ... .oo .oo ..x xx. .xx .o. o.o o.o o.o o.o .o. .xx x.. .xx xx. xx. ... .oo .oo ... .o. o.o o.o .oo .oo ... .xx x.. .xx o.o ... o.o .oo ....
output:
Bob
result:
ok "Bob"
Test #35:
score: 0
Accepted
time: 52ms
memory: 5960kb
input:
1 100000 oxx .o. .ox ... ..o xox o.. .o. x.x oo. xx. ..o ..x ..o ... x.. .o. x.o .o. oox xx. .xo .xo o.. ... o.x xo. .x. oxo o.. .ox .ox ox. xo. o.. .x. o.. xxo ox. ..o .o. x.x ox. .ox .ox .xo oxo ... ..x ..o .ox x.x .o. o.. o.. .o. x.x .ox .ox ox. .x. o.. x.o .o. xoo .xx .o. ....
output:
Bob
result:
ok "Bob"
Test #36:
score: 0
Accepted
time: 53ms
memory: 5832kb
input:
1 100000 .oo oxx x.. oxo x.o x.. x.. xox .o. oxx ... ox. .ox xoo ..x oxo x.. ... ... xox .ox x.. .oo .xx x.. x.o oxo .ox .ox x.. .x. xxo oo. o.o oxx x.. .x. .x. oo. x.. .x. .oo o.o .x. ..x ... xox xo. xo. xox ... oox .x. ox. ox. ... oxx ..x xoo .ox ..o ..x .xo oo. xxo .x. .xx ....
output:
Alice
result:
ok "Alice"
Test #37:
score: 0
Accepted
time: 53ms
memory: 5964kb
input:
1 100000 x.. .xo ..o ... ... xo. x.. .oo .xx .o. xx. oo. xo. xoo .x. x.. o.. xo. ..o xxo ... x.. ..o xoo o.. .x. o.x x.x o.. oo. oxo xx. .o. .x. oxo ..o .ox ... ... xo. .xo .xo o.. ox. ..x .x. oxo o.. o.. xoo x.x xo. ... ... xoo x.. .o. oxo x.. ... o.. o.x xox xox oo. .x. oo. x...
output:
Bob
result:
ok "Bob"
Extra Test:
score: 0
Extra Test Passed