QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#149334#3899. BSUIR Open XZrjaKAC ✓32ms10048kbC++2013.8kb2023-08-24 14:22:572023-08-24 14:22:58

Judging History

你现在查看的是最新测评结果

  • [2023-08-24 14:22:58]
  • 评测
  • 测评结果:AC
  • 用时:32ms
  • 内存:10048kb
  • [2023-08-24 14:22:57]
  • 提交

answer

#ifdef ONLINE_JUDGE
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#endif
#include <bits/stdc++.h>
#include <ext/rope>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/hash_policy.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <ext/pb_ds/trie_policy.hpp>
#include <ext/pb_ds/priority_queue.hpp>
using namespace std;
using namespace __gnu_cxx;
using namespace __gnu_pbds;
template <class T> using Tree = tree<T, null_type, less_equal<T>, rb_tree_tag,tree_order_statistics_node_update>;
using Trie = trie<string, null_type, trie_string_access_traits<>, pat_trie_tag, trie_prefix_search_node_update>;
// template <class T> using heapq = __gnu_pbds::priority_queue<T, greater<T>, pairing_heap_tag>;
template <class T> using heapq = std::priority_queue<T, vector<T>, greater<T>>;
using ll   =                long long;
using u32  =                unsigned int;
using u64  =                unsigned long long;
using i128 =                __int128;
using ld   =                long double;
using ui   =                unsigned int;
using ull  =                unsigned long long;
using pii  =                pair<int, int>;
using pll  =                pair<ll, ll>;
using pdd  =                pair<ld, ld>;
using vi   =                vector<int>;
using vvi  =                vector<vector<int>>;
using vll  =                vector<ll>;
using vvll =                vector<vector<ll>>;
using vpii =                vector<pii>;
using vpll =                vector<pll>;
#define vc                  vector
#define lb                  lower_bound
#define ub                  upper_bound
#define pb                  push_back
#define pf                  push_front
#define eb                  emplace_back
#define fi                  first
#define se                  second
#define overload4(_1, _2, _3, _4, name, ...) name
#define overload3(_1, _2, _3, name, ...) name
#define rep1(n)             for(int i = 0; i < n; ++i)
#define rep2(i, n)          for(int i = 0; i < n; ++i)
#define rep3(i, a, b)       for(int i = a; i < b; ++i)
#define rep4(i, a, b, c)    for(int i = a; i < b; i += c)
#define rep(...)            overload4(__VA_ARGS__, rep4, rep3, rep2, rep1) (__VA_ARGS__)
#define rrep1(n)            for(int i = n; i--; )
#define rrep2(i, n)         for(int i = n; i--; )
#define rrep3(i, a, b)      for(int i = a; i > b; i--)
#define rrep4(i, a, b, c)   for(int i = a; i > b; i -= c)
#define rrep(...)           overload4(__VA_ARGS__, rrep4, rrep3, rrep2, rrep1) (__VA_ARGS__)
#define each1(i, a)         for(auto&& i : a)
#define each2(x, y, a)      for(auto&& [x, y] : a)
#define each3(x, y, z, a)   for(auto&& [x, y, z] : a)
#define each(...)           overload4(__VA_ARGS__, each3, each2, each1) (__VA_ARGS__)
#define FOR1(a) for (ll _ = 0; _ < ll(a); ++_)
#define FOR2(i, a) for (ll i = 0; i < ll(a); ++i)
#define FOR3(i, a, b) for (ll i = a; i < ll(b); ++i)
#define FOR4(i, a, b, c) for (ll i = a; i < ll(b); i += (c))
#define FOR1_R(a) for (ll i = (a)-1; i >= ll(0); --i)
#define FOR2_R(i, a) for (ll i = (a)-1; i >= ll(0); --i)
#define FOR3_R(i, a, b) for (ll i = (b)-1; i >= ll(a); --i)
#define overload4(a, b, c, d, e, ...) e
#define overload3(a, b, c, d, ...) d
#define FOR(...) overload4(__VA_ARGS__, FOR4, FOR3, FOR2, FOR1)(__VA_ARGS__)
#define FOR_R(...) overload3(__VA_ARGS__, FOR3_R, FOR2_R, FOR1_R)(__VA_ARGS__)
#define FOR_subset(t, s) \
  for (ll t = (s); t >= 0; t = (t == 0 ? -1 : (t - 1) & (s)))
#define len(x)              (int)x.size()
#define elif                else if
#define all1(i)             begin(i), end(i)
#define all2(i, a)          begin(i), begin(i) + a
#define all3(i, a, b)       begin(i) + a, begin(i) + b
#define all(...)            overload3(__VA_ARGS__, all3, all2, all1) (__VA_ARGS__)
#define rall1(i)            rbegin(i), rend(i)
#define rall2(i, a)         rbegin(i), rbegin(i) + a
#define rall3(i, a, b)      rbegin(i) + a, rbegin(i) + b
#define rall(...)           overload3(__VA_ARGS__, rall3, rall2, rall1) (__VA_ARGS__)
#define mst(x, a)           memset(x, a, sizeof(x))
#define bitcnt(x)           (__builtin_popcountll(x))
#define endl                "\n"
#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()), x.shrink_to_fit()
#define SORT(a)             sort(all(a))
#define REV(a)              reverse(all(a))
int popcnt(int x) { return __builtin_popcount(x); }
int popcnt(u32 x) { return __builtin_popcount(x); }
int popcnt(ll x) { return __builtin_popcountll(x); }
int popcnt(u64 x) { return __builtin_popcountll(x); }
// (0, 1, 2, 3, 4) -> (-1, 0, 1, 1, 2)
int topbit(int x) { return (x == 0 ? -1 : 31 - __builtin_clz(x)); }
int topbit(u32 x) { return (x == 0 ? -1 : 31 - __builtin_clz(x)); }
int topbit(ll x) { return (x == 0 ? -1 : 63 - __builtin_clzll(x)); }
int topbit(u64 x) { return (x == 0 ? -1 : 63 - __builtin_clzll(x)); }
// (0, 1, 2, 3, 4) -> (-1, 0, 1, 0, 2)
int lowbit(int x) { return (x == 0 ? -1 : __builtin_ctz(x)); }
int lowbit(u32 x) { return (x == 0 ? -1 : __builtin_ctz(x)); }
int lowbit(ll x) { return (x == 0 ? -1 : __builtin_ctzll(x)); }
int lowbit(u64 x) { return (x == 0 ? -1 : __builtin_ctzll(x)); }
template<class T> auto max(const T& a){ return *max_element(all(a)); }
template<class T> auto min(const T& a){ return *min_element(all(a)); }
template <typename T, typename U>
T ceil(T x, U y) {
    return (x > 0 ? (x + y - 1) / y : x / y);
}
template <typename T, typename U>
T floor(T x, U y) {
    return (x > 0 ? x / y : (x - y + 1) / y);
}
template <typename T, typename U>
pair<T, T> divmod(T x, U y) {
    T q = floor(x, y);
    return {q, x - q * y};
}
template <typename T, typename U>
T SUM(const vector<U> &A) {
    T sum = 0;
    for (auto &&a: A) sum += a;
    return sum;
}
template <typename T, typename U>
vector<T> cumsum(vector<U> &A, int off = 1) {
    int N = A.size();
    vector<T> B(N + 1);
    for (int i = 0; i < N; i++) B[i + 1] = B[i] + A[i];
    if (off == 0) B.erase(B.begin());
    return B;
}
template <typename F>
ll binary_search(F check, ll ok, ll ng, bool check_ok = true) {
  if (check_ok) assert(check(ok));
  while (abs(ok - ng) > 1) {
    auto x = (ng + ok) / 2;
    tie(ok, ng) = (check(x) ? make_pair(x, ng) : make_pair(ok, x));
  }
  return ok;
}
template <typename F>
double binary_search_real(F check, double ok, double ng, int iter = 100) {
  while (iter--) {
    double x = (ok + ng) / 2;
    tie(ok, ng) = (check(x) ? make_pair(x, ng) : make_pair(ok, x));
  }
  return (ok + ng) / 2;
}
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);
}
mt19937 rng( chrono::steady_clock::now().time_since_epoch().count() );
#define Ran(a, b) rng() % ( (b) - (a) + 1 ) + (a)
struct custom_hash {
    static uint64_t splitmix64(uint64_t x) {
        // http://xorshift.di.unimi.it/splitmix64.c
        x += 0x9e3779b97f4a7c15;
        x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9;
        x = (x ^ (x >> 27)) * 0x94d049bb133111eb;
        return x ^ (x >> 31);
    }

    size_t operator()(uint64_t x) const {
        static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count();
        return splitmix64(x + FIXED_RANDOM);
    }

    size_t operator()(pair<uint64_t,uint64_t> x) const {
        static const uint64_t FIXED_RANDOM = chrono::steady_clock::now().time_since_epoch().count();
        return splitmix64(x.first + FIXED_RANDOM) ^ (splitmix64(x.second + FIXED_RANDOM) >> 1);
    }
};
const i128 ONE = 1;
istream &operator>>(istream &in, i128 &x) {
    string s;
    in >> s;
    bool minus = false;
    if (s[0] == '-') {
        minus = true;
        s.erase(s.begin());
    }
    x = 0;
    for (auto i : s) {
        x *= 10;
        x += i - '0';
    }
    if (minus) x = -x;
    return in;
}
ostream &operator<<(ostream &out, i128 x) {
    string s;
    bool minus = false;
    if (x < 0) {
        minus = true;
        x = -x;
    }
    while (x) {
        s.push_back(x % 10 + '0');
        x /= 10;
    }
    if (s.empty()) s = "0";
    if (minus) out << '-';
    reverse(s.begin(), s.end());
    out << s;
    return out;
}
template <class T> istream &operator>>(istream &in, vector<T> &v) {
    for(auto& x : v) cin >> x;
    return in;
}
template <class T> ostream &operator<<(ostream &os, const vector<T> &v) {
    for(auto it = begin(v); it != end(v); ++it) {
        if(it == begin(v)) os << *it;
        else os << " " << *it;
    }
    return os;
}
template <class T> ostream &operator<<(ostream &os, const set<T> &v) {
    for(auto it = begin(v); it != end(v); ++it) {
        if(it == begin(v)) os << *it;
        else os << " " << *it;
    }
    return os;
}
template <class T> ostream &operator<<(ostream &os, const multiset<T> &v) {
    for(auto it = begin(v); it != end(v); ++it) {
        if(it == begin(v)) os << *it;
        else os << " " << *it;
    }
    return os;
}
template <class T> ostream &operator<<(ostream &os, const Tree<T> &v) {
    for(auto it = begin(v); it != end(v); ++it) {
        if(it == begin(v)) os << *it;
        else os << " " << *it;
    }
    return os;
}
template <class T, class S> istream &operator>>(istream &in, pair<T, S> &p) {
    cin >> p.first >> p.second;
    return in;
}
template <class T, class S> ostream &operator<<(ostream &os, const pair<T, S> &p) {
    os << p.first << " " << p.second;
    return os;
}
template <class T, size_t size> istream &operator>>(istream &in, array<T, size> &v) {
    for(auto& x : v) cin >> x;
    return in;
}
template <class T, size_t size> ostream &operator<<(ostream &os, const array<T, size> &v) {
    for(int i = 0; i < size; i++) {
        if(i == 0) os << v[i];
        else os << " " << v[i];
    }
    return os;
}
inline void print() { std::cout << '\n'; }
template <typename Head, typename... Tail>
inline void print(const Head& head, const Tail &...tails) {
    std::cout << head;
    if (sizeof...(tails)) std::cout << ' ';
    print(tails...);
}
template <typename Iterable>
auto print_all(const Iterable& v, std::string sep = " ", std::string end = "\n") -> decltype(std::cout << *v.begin(), void()) {
    for (auto it = v.begin(); it != v.end();) {
        std::cout << *it;
        if (++it != v.end()) std::cout << sep;
    }
    std::cout << end;
}
void read() {}
template <class Head, class... Tail>
void read(Head &head, Tail &... tail) {
    cin >> head;
    read(tail...);
}
#define INT(...)   \
    int __VA_ARGS__; \
    read(__VA_ARGS__)
#define LL(...)   \
    ll __VA_ARGS__; \
    read(__VA_ARGS__)
#define STR(...)      \
    string __VA_ARGS__; \
    read(__VA_ARGS__)
#define CHAR(...)   \
    char __VA_ARGS__; \
    read(__VA_ARGS__)
#define DBL(...)      \
    double __VA_ARGS__; \
    read(__VA_ARGS__)
#define VEC(type, name, size) \
    vector<type> name(size);    \
    read(name)
#define VV(type, name, h, w)                     \
    vector<vector<type>> name(h, vector<type>(w)); \
    read(name)
void YES(bool t = 1) { print(t ? "YES" : "NO"); }
void NO(bool t = 1) { YES(!t); }
void Yes(bool t = 1) { print(t ? "Yes" : "No"); }
void No(bool t = 1) { Yes(!t); }
void yes(bool t = 1) { print(t ? "yes" : "no"); }
void no(bool t = 1) { yes(!t); }
ll gcd(ll x, ll y) {
    if(!x) return y;
    if(!y) return x;
    int t = __builtin_ctzll(x | y);
    x >>= __builtin_ctzll(x);
    do {
        y >>= __builtin_ctzll(y);
        if (x > y) swap(x, y);
        y -= x;
    } while (y);
    return x << t;
}
ll lcm(ll x, ll y) { return x * y / gcd(x, y); }
ll exgcd(ll a, ll b, ll &x, ll &y) {
    if(!b) return x = 1, y = 0, a;
    ll d = exgcd(b, a % b, x, y);
    ll t = x;
    x = y;
    y = t - a / b * x;
    return d;
}
ll max(ll x, ll y) { return x > y ? x : y; }
ll min(ll x, ll y) { return x < y ? x : y; }
ll Mod(ll x, int mod) { return (x % mod + mod) % mod; }
ll pow(ll x, ll y, ll mod){
    ll res = 1, cur = x;
    while (y) {
        if (y & 1) res = res * cur % mod;
        cur = ONE * cur * cur % mod;
        y >>= 1;
    }
    return res % mod;
}
ll probabilityMod(ll x, ll y, ll mod) {
    return x * pow(y, mod-2, mod) % mod;
}
vvi getGraph(int n, int m, bool directed = false) {
    vvi res(n);
    rep(_, 0, m) {
        int u, v;
        cin >> u >> v;
        u--, v--;
        res[u].emplace_back(v);
        if(!directed) res[v].emplace_back(u);
    }
    return res;
}
vector<vpii> getWeightedGraph(int n, int m, bool directed = false) {
    vector<vpii> res(n);
    rep(_, 0, m) {
        int u, v, w;
        cin >> u >> v >> w;
        u--, v--;
        res[u].emplace_back(v, w);
        if(!directed) res[v].emplace_back(u, w);
    }
    return res;
}
template <class... Args> auto ndvector(size_t n, Args &&...args) {
    if constexpr (sizeof...(args) == 1) {
        return vector(n, args...);
    } else {
        return vector(n, ndvector(args...));
    }
}
const ll LINF = 0x1fffffffffffffff;
const ll MINF = 0x7fffffffffff;
const int INF = 0x3fffffff;
const int MOD = 1000000007;
const int MODD = 998244353;
const int N = 1e6 + 10;

void solve() {
    INT(n);
    const string S = "BSUIROPENX";
    map<string, int> M;
    ll ans = 0;
    rep(_, n) {
        STR(s);
        M[s]++;
    }
    rep(i, 1, len(S) + 1) {
        int t1 = M[S.substr(0, i)], t2 = M[S.substr(i, len(S) - i)];
        ans += 1ll * t1 * t2;
    }
    print(ans);
    
}

signed main() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    int t = 1;
    // cin >> t;
    while (t--) {
        solve();
    }
    return 0;
}

詳細信息

Test #1:

score: 100
Accepted
time: 1ms
memory: 3784kb

input:

4
BSUIR
BSU
OPEN
IROPENX

output:

1

result:

ok 1 number(s): "1"

Test #2:

score: 0
Accepted
time: 1ms
memory: 3828kb

input:

13
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR

output:

42

result:

ok 1 number(s): "42"

Test #3:

score: 0
Accepted
time: 1ms
memory: 3624kb

input:

10
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR

output:

25

result:

ok 1 number(s): "25"

Test #4:

score: 0
Accepted
time: 1ms
memory: 3632kb

input:

10
O
R
T
O
X
H
H
H
N
L

output:

0

result:

ok 1 number(s): "0"

Test #5:

score: 0
Accepted
time: 1ms
memory: 3696kb

input:

10
SBKBERJGUODT
KZOOF
XDKAPSJTKVATUUDV
KVRQJFYYQSNXPDMKMFJRYMHWNDCREMZCTROZD
JZU
YO
HZRSQGX
IRNRVQ
TPQIO
GBKRIQT

output:

0

result:

ok 1 number(s): "0"

Test #6:

score: 0
Accepted
time: 1ms
memory: 3704kb

input:

10
NFDGNIRQVJJFFELILRYDFEKZNLKNQJNPWDUVQJGFQXQT
GZBKMKKIHTMGJIWI
QNQKTMJECAXXVYMKPURXFFYTBEUUMXXABMLPFDEPPZXZAXUVFDTIOXXPHTSQVTUHO
GWXIZLSDVAUBKCCKGVFBIQKBZEOWJP
CTOTD
DNJRNYQM
U
CEPOWTRXDDZZKAGBBVOGSVUPPHVWM
TCYKJSWNBBR
DTSZVWQCGEWYKBJEQWI

output:

0

result:

ok 1 number(s): "0"

Test #7:

score: 0
Accepted
time: 1ms
memory: 3572kb

input:

10
OJJQVEGKYJJWGLXRWNWBXUERRHCKTSENZFFVDAHFVOUUKBYXRJFK
BVSPNPBUVQTTXSPMFFJYIJPPKBXZJCWLNJMUNQCSJPZ
GMUMIVYRETILZSQJRWSXSWPISVSY
YIPLYD
XVMAKVUCJMDGNYYIHRGBLCUDPHSTDDCZZVOTSDYLIXANRIABBZLBOWMSNSXBZCYDQCGR
HTYFDLUSTQTMDMJCJYEGQTZVCGLZTTPMTJNSIHTQAEAADNWQXDNSKWHF
MWDFGRSZEC
V
THYCVPSSI
IQXUCOBULHOLUPW...

output:

0

result:

ok 1 number(s): "0"

Test #8:

score: 0
Accepted
time: 0ms
memory: 3828kb

input:

16
HELLOBSUI
ROPENX
HE
LLO
BSUIROPENX
HELLO
B
SUIRO
PENXHELLOBS
U
IROPENXHELLOBSUIROPE
NXHELLOB
S
U
IROP
ENXHELLOBSUIR

output:

0

result:

ok 1 number(s): "0"

Test #9:

score: 0
Accepted
time: 1ms
memory: 3656kb

input:

32
HELL
OB
SUIR
OP
ENX
HEL
LOBSUIROPE
NXH
E
L
LO
B
SUIRO
P
ENXHE
L
LOB
SUIROPE
NX
HE
LLO
B
SUIR
OP
E
N
XHEL
LOBSUIROPE
N
XHELLO
BSU
IR

output:

0

result:

ok 1 number(s): "0"

Test #10:

score: 0
Accepted
time: 1ms
memory: 3576kb

input:

32
HE
LLO
BSUIROPE
NXHEL
LO
BSU
IROPENXH
ELLO
BSU
IROP
ENXHELLOBSU
IROPE
NXHELLOBSUIR
OPENXHELLOBSUIROP
ENX
H
ELLOBSUIRO
PENX
H
ELLOBSUIROPENXHELLOBSUIROPENXH
ELLOB
SU
IROPENXHELLO
BSUI
ROPE
NX
HEL
LOBSUIROPENXHEL
LOBSUIR
OPENXHEL
L
O

output:

1

result:

ok 1 number(s): "1"

Test #11:

score: 0
Accepted
time: 1ms
memory: 3576kb

input:

50
HEL
L
OBS
U
I
ROPENX
HE
L
LOBSUIR
O
PEN
X
HELLOBSU
IROPENXHELL
OB
SU
I
ROP
EN
XH
E
LLOBSUIROPENXH
E
LLOB
SUIROPEN
X
HELLOBSU
I
ROPENXHE
L
L
OBSU
IROPENXHEL
LOBS
U
IROPE
NX
H
ELLOBSUIROPE
NXHELLOBS
UIROPEN
XHEL
LO
B
SUIRO
PENXHELLO
BSUIROPEN
XHEL
L
O

output:

2

result:

ok 1 number(s): "2"

Test #12:

score: 0
Accepted
time: 0ms
memory: 3576kb

input:

100
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
OP...

output:

2500

result:

ok 1 number(s): "2500"

Test #13:

score: 0
Accepted
time: 1ms
memory: 3588kb

input:

228
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
BS...

output:

12996

result:

ok 1 number(s): "12996"

Test #14:

score: 0
Accepted
time: 1ms
memory: 3860kb

input:

322
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BS...

output:

25921

result:

ok 1 number(s): "25921"

Test #15:

score: 0
Accepted
time: 1ms
memory: 3868kb

input:

1000
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
B...

output:

250000

result:

ok 1 number(s): "250000"

Test #16:

score: 0
Accepted
time: 0ms
memory: 3708kb

input:

1000
B
SUIRO
P
E
NX
B
SU
IRO
PEN
X
BS
U
IRO
P
ENX
BS
U
IR
OPE
N
XB
S
UI
R
O
P
EN
X
BSU
I
RO
PE
NX
B
S
UI
R
OPE
N
XB
SU
I
RO
P
E
NX
B
S
UIR
OP
EN
XB
S
U
IR
OP
E
N
X
B
S
UI
R
OPEN
XBS
U
IROP
E
NXBSU
I
RO
PENX
B
S
UI
ROP
ENX
BS
UIROP
ENXBSUI
ROP
ENXBSUI
R
OPE
NX
B
SUIR
O
P
EN
XB
S
U
IR
O
PEN
X
B
SU
I
R...

output:

82

result:

ok 1 number(s): "82"

Test #17:

score: 0
Accepted
time: 1ms
memory: 3628kb

input:

10000
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
...

output:

25000000

result:

ok 1 number(s): "25000000"

Test #18:

score: 0
Accepted
time: 0ms
memory: 3640kb

input:

65536
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
BSUIR
BSUIR
...

output:

1073741824

result:

ok 1 number(s): "1073741824"

Test #19:

score: 0
Accepted
time: 2ms
memory: 3668kb

input:

92681
BSUIR
OPENX
OPENX
BSUIR
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
...

output:

2147441940

result:

ok 1 number(s): "2147441940"

Test #20:

score: 0
Accepted
time: 5ms
memory: 3600kb

input:

92682
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
OPENX
...

output:

2147488281

result:

ok 1 number(s): "2147488281"

Test #21:

score: 0
Accepted
time: 6ms
memory: 3832kb

input:

100000
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
OPENX
BSUIR
BSUIR
OPENX
OPENX
BSUIR
OPENX
OPENX
OPENX
OPENX
BSUIR
OPENX
BSUIR
BSUIR
BSUIR
OPENX
BSUIR
OPENX
OPENX
BSUIR
OPENX
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX
OPENX
OPENX
BSUIR
BSUIR
BSUIR
BSUIR
OPENX...

output:

2500000000

result:

ok 1 number(s): "2500000000"

Test #22:

score: 0
Accepted
time: 32ms
memory: 10048kb

input:

100000
NPPENPNXNSRXPP
IBESEENSONURP
X
IORXUESSXIO
PIIRSUXNOXU
BXERO
USXBBPSREPBNI
XUBUBISOSUIOPXUOPB
BIEPIS
SSXIRPBUUNOPPOS
BOEOUXOSP
XR
X
ROIEUPISPEEBRRXEXIRBO
UNPPEIPPRRRPNBEROUN
INBIORNB
OPREIXRUIOXNOORRIPUIPXNBNBEII
OOXSRPNSBOOBRUXBENOOUBXOPNI
SOUR
BPRIISBPX
N
R
BEXPEPRBU
URR
XNSBIIP
PSBPOUUB
XU...

output:

0

result:

ok 1 number(s): "0"

Test #23:

score: 0
Accepted
time: 9ms
memory: 4812kb

input:

100000
U
S
PP
XO
IX
B
SP
RN
SXI
E
E
P
XBXUSSO
RI
BB
S
X
SSPX
R
NXIBB
N
XRSS
O
R
BIX
P
PSIE
U
NE
XP
I
X
RU
O
E
B
S
PXOPX
X
RURRB
NXR
NUXPN
RRO
X
B
P
R
E
BEP
EN
RS
OS
R
XUBBB
XOP
S
X
XUO
U
U
UEX
B
ES
U
RPPIU
UX
SI
O
ENPB
XN
OBORBIB
B
NRO
PP
B
O
NR
N
OBNBI
N
X
I
IIIU
UE
U
IE
RBOXN
X
S
I
X
R
X
PPBR
N
OX...

output:

0

result:

ok 1 number(s): "0"

Test #24:

score: 0
Accepted
time: 11ms
memory: 3780kb

input:

100000
BSUIR
OPENXBSUIROP
ENXBSU
IROPENXBS
UI
R
O
PENXBS
UIROPENXBSUIROPENXBSUIR
OPEN
XBSUIROPE
NXBSUIROPE
NXBSUIRO
PEN
X
BSUIR
O
PENXBSUIROPE
NXBS
UIROPENX
BSUIR
OPENX
B
SUI
RO
PEN
XBSUIROP
ENXBSUIROPENXBSUI
ROPENXBSUIRO
PENXBSUIROPENXBSUIROP
ENXBSUIROPEN
XBS
U
I
ROPENXBSU
IROPE
NX
BSU
IROP
ENXBS
U...

output:

6070126

result:

ok 1 number(s): "6070126"

Test #25:

score: 0
Accepted
time: 8ms
memory: 3584kb

input:

100000
BSUI
R
O
P
E
NXBS
U
IR
OPE
N
XB
SU
IRO
PE
N
XB
SU
IR
OPEN
XBS
UI
R
OP
E
N
X
BS
U
IRO
P
E
N
X
BSUI
RO
PE
NX
BSUIRO
P
E
NXBSU
IROPENX
B
S
UI
R
O
P
E
NXB
S
UI
R
O
PE
NXB
S
U
IRO
P
EN
X
B
S
UIR
O
P
EN
XBSU
I
R
OP
ENXBS
U
I
R
OP
E
N
XB
S
UI
R
O
P
E
N
X
B
S
UIR
OP
EN
X
BSU
IR
OPE
NX
B
SU
IRO
PEN
XB...

output:

855631

result:

ok 1 number(s): "855631"

Test #26:

score: 0
Accepted
time: 6ms
memory: 3556kb

input:

100000
BS
UIR
OPENXBSUIR
OPE
NXBS
U
IROP
ENX
BS
UIR
O
PE
N
X
BS
UIROPEN
XBS
U
IR
O
PEN
XBS
U
IR
OP
EN
XB
SUI
R
O
PEN
XB
SUI
RO
PE
NXB
SU
IRO
PENXBSUIRO
P
E
NX
BSU
I
ROP
ENX
BSU
IRO
PE
NX
B
SUIR
OP
EN
XB
S
U
I
R
O
P
E
NX
BSU
IROPEN
X
BS
UI
R
O
PE
NX
BS
UIROP
EN
X
BS
U
IROPE
N
X
B
SUIROP
ENX
B
SUI
R
O...

output:

2379412

result:

ok 1 number(s): "2379412"

Test #27:

score: 0
Accepted
time: 9ms
memory: 3724kb

input:

99999
BS
U
IROPE
N
XBSUIROP
ENX
B
S
UIRO
PENX
BS
U
IR
O
PE
NXBSU
I
R
O
PENX
BSUIROP
E
N
XBS
UIROP
ENXBSUI
RO
PENX
BSU
IRO
PE
NX
B
SUIR
O
PENXBS
UIROP
E
N
XB
SUI
RO
PEN
XBS
U
I
R
OPENX
BS
U
I
R
OPENXBSU
I
RO
PEN
XB
SUIR
O
PENXBS
U
I
R
OP
ENXBSUIR
OP
ENX
BS
UIRO
P
EN
XB
S
UIROP
E
NXBSUIR
O
PENXB
SUI
R...

output:

2447516

result:

ok 1 number(s): "2447516"

Test #28:

score: 0
Accepted
time: 5ms
memory: 3840kb

input:

99991
R
O
P
ENXBSUIRO
PE
NXB
SUI
RO
PENX
BS
U
I
RO
PE
NX
B
SU
I
R
OPENX
BS
UIROPE
NX
BSU
IROPE
NX
B
SUIROP
E
N
XBS
U
IR
OP
ENXB
SUI
R
OPE
N
X
B
SUI
R
O
PE
N
XB
S
UIRO
PENX
BS
UIR
OP
E
N
XBSUI
ROPE
NXBS
UI
RO
P
ENXBSU
I
R
OP
E
NXB
SUI
ROPENXB
S
U
I
ROPENXB
S
U
IR
O
P
EN
XB
SU
IROPE
NXB
SU
I
ROPEN
XBS...

output:

2380006

result:

ok 1 number(s): "2380006"

Test #29:

score: 0
Accepted
time: 6ms
memory: 3900kb

input:

54678
OPEN
XBSUIROPE
N
XBS
UIRO
PEN
XBSU
IROPEN
XBSUIROP
ENXBSUIROPENXBS
U
IROPE
NX
B
S
UIRO
PENXBS
UIROP
ENXBSU
IROP
ENXB
S
UI
ROPENX
BSU
IROPENXBSUI
ROPENXBSUI
ROPE
NXBSUI
ROPEN
XB
S
UIROPENXBSUIR
OPENX
B
SUIROPENXBSUI
ROPENXBS
UIROPE
NX
B
SUIROPENXBSUIR
OPE
N
XBSUIROP
ENXBS
UIROPE
NXBSUIRO
PENXBS...

output:

1794329

result:

ok 1 number(s): "1794329"

Test #30:

score: 0
Accepted
time: 3ms
memory: 5176kb

input:

2
HKBUHXKTIYWQJAOJBWHOEJTVNEUSZNPRSZYLORKMIEONQIJMISECMWIWGAFWSDSUUIUQOIVMAVLETTVLZUEWMLOZCWSQZWDFUMJTOCSNNWPSOPSDZOROWIAGMXUMUYYKXWETGVCEGJFIKWIVGJMIGBANFIDOZNIGYKBRQLXXPTJAWSHLDEDOFGCCBEDRMSGBDBYDPGWIOWKWLOKLLDUKRHWIDEHMSXZIVSNPRSVJSXWWPGZKGWUZOGYCWXBLBXGSPSKYFTDWAWWDWDZXDCUBXHXDKFPUFOBBXDIWBDMJFD...

output:

0

result:

ok 1 number(s): "0"

Test #31:

score: 0
Accepted
time: 1ms
memory: 4820kb

input:

5
NTTSYNVGBXUBOKLLASTATVCQKRRZEYLNVHWXCABFZGPLFYAOZXVRTRJWUQYOUECRIBROGJRJFVMYMSEFZQJMSVLDKUECNFFMXCNMZCQMCMWWOPDYUXFYEVASPYFVNXZJIBNFIXBJEGDXUHECAVSWOTPLBPZJZDIJKILGWRQEGHTBXDVLAHVWQXFMLERBBHWRNMKSYKHTUOVKWMXFUYAXBACAVIIWWFPIBTRMBGDBRYWTKQNUBTCOAACLZFIEEDZFYZUAKJZQXPBZBBXQNRMDYXLNGUBSEFPRADJENBIEHQ...

output:

0

result:

ok 1 number(s): "0"

Test #32:

score: 0
Accepted
time: 1ms
memory: 4868kb

input:

8
DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD...

output:

0

result:

ok 1 number(s): "0"

Test #33:

score: 0
Accepted
time: 4ms
memory: 4584kb

input:

2
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

output:

0

result:

ok 1 number(s): "0"

Test #34:

score: 0
Accepted
time: 3ms
memory: 5348kb

input:

1
VYODMAYYCSNVQPRASPKCJGIEVJWIGJQTYFAQSOFYLNEOKVEBUHPPSQPEUVAIZUFCWAEARQFEHWCGDUBWHELAIZXQSHPONUBUJHPVBAKVJPTKWYXMAVDTCWATKGPYFHYSSUJYOBUTPTNMOTCCIPTTCXSXYOVQJSQNLLYDPJRWTEFANOAUULXLJTZPRVGXZEJVZONGWGBNEGYRAHYOZNUGGMKUPFWJFBIJUBCYFEKDLWGNZMLPIOZMTAQIVNZGCMJWNHPXKHVHRILWNEPQKGEIOUKKLPLCGBYLOEBDWOEMVX...

output:

0

result:

ok 1 number(s): "0"

Test #35:

score: 0
Accepted
time: 1ms
memory: 3568kb

input:

1
A

output:

0

result:

ok 1 number(s): "0"

Test #36:

score: 0
Accepted
time: 1ms
memory: 3792kb

input:

1
BSUIROPENX

output:

0

result:

ok 1 number(s): "0"

Test #37:

score: 0
Accepted
time: 1ms
memory: 3860kb

input:

2
BSUIROPEN
X

output:

1

result:

ok 1 number(s): "1"

Test #38:

score: 0
Accepted
time: 1ms
memory: 3604kb

input:

2
X
BSUIROPEN

output:

1

result:

ok 1 number(s): "1"

Test #39:

score: 0
Accepted
time: 1ms
memory: 3708kb

input:

2
B
SUIROPENX

output:

1

result:

ok 1 number(s): "1"

Test #40:

score: 0
Accepted
time: 1ms
memory: 3828kb

input:

2
UIROPENX
B

output:

0

result:

ok 1 number(s): "0"