QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#803153#9863. Bracketsucup-team112#AC ✓537ms51104kbC++2026.1kb2024-12-07 16:13:042024-12-10 04:39:01

Judging History

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

  • [2024-12-10 04:39:01]
  • 自动重测本题所有获得100分的提交记录
  • 测评结果:AC
  • 用时:537ms
  • 内存:51104kb
  • [2024-12-10 04:34:15]
  • hack成功,自动添加数据
  • (/hack/1275)
  • [2024-12-07 16:13:05]
  • 评测
  • 测评结果:100
  • 用时:675ms
  • 内存:51260kb
  • [2024-12-07 16:13:04]
  • 提交

answer

// #pragma GCC target("avx2")
// #pragma GCC optimize("O3")
// #pragma GCC optimize("unroll-loops")
// #define INTERACTIVE

#include <bits/stdc++.h>
using namespace std;

namespace templates {
// type
using ll  = long long;
using ull = unsigned long long;
using Pii = pair<int, int>;
using Pil = pair<int, ll>;
using Pli = pair<ll, int>;
using Pll = pair<ll, ll>;
template <class T>
using pq = priority_queue<T>;
template <class T>
using qp = priority_queue<T, vector<T>, greater<T>>;
// clang-format off
#define vec(T, A, ...) vector<T> A(__VA_ARGS__);
#define vvec(T, A, h, ...) vector<vector<T>> A(h, vector<T>(__VA_ARGS__));
#define vvvec(T, A, h1, h2, ...) vector<vector<vector<T>>> A(h1, vector<vector<T>>(h2, vector<T>(__VA_ARGS__)));
// clang-format on

// for loop
#define fori1(a) for (ll _ = 0; _ < (a); _++)
#define fori2(i, a) for (ll i = 0; i < (a); i++)
#define fori3(i, a, b) for (ll i = (a); i < (b); i++)
#define fori4(i, a, b, c) for (ll i = (a); ((c) > 0 || i > (b)) && ((c) < 0 || i < (b)); i += (c))
#define overload4(a, b, c, d, e, ...) e
#define fori(...) overload4(__VA_ARGS__, fori4, fori3, fori2, fori1)(__VA_ARGS__)

// declare and input
// clang-format off
#define INT(...) int __VA_ARGS__; inp(__VA_ARGS__);
#define LL(...) ll __VA_ARGS__; inp(__VA_ARGS__);
#define STRING(...) string __VA_ARGS__; inp(__VA_ARGS__);
#define CHAR(...) char __VA_ARGS__; inp(__VA_ARGS__);
#define DOUBLE(...) double __VA_ARGS__; STRING(str___); __VA_ARGS__ = stod(str___);
#define VEC(T, A, n) vector<T> A(n); inp(A);
#define VVEC(T, A, n, m) vector<vector<T>> A(n, vector<T>(m)); inp(A);
// clang-format on

// const value
const ll MOD1   = 1000000007;
const ll MOD9   = 998244353;
const double PI = acos(-1);

// other macro
#if !defined(RIN__LOCAL) && !defined(INTERACTIVE)
#define endl "\n"
#endif
#define spa ' '
#define len(A) ll(A.size())
#define all(A) begin(A), end(A)

// function
vector<char> stoc(string &S) {
    int n = S.size();
    vector<char> ret(n);
    for (int i = 0; i < n; i++) ret[i] = S[i];
    return ret;
}
string ctos(vector<char> &S) {
    int n      = S.size();
    string ret = "";
    for (int i = 0; i < n; i++) ret += S[i];
    return ret;
}

template <class T>
auto min(const T &a) {
    return *min_element(all(a));
}
template <class T>
auto max(const T &a) {
    return *max_element(all(a));
}
template <class T, class S>
auto clamp(T &a, const S &l, const S &r) {
    return (a > r ? r : a < l ? l : a);
}
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 <class T, class S>
inline bool chclamp(T &a, const S &l, const S &r) {
    auto b = clamp(a, l, r);
    return (a != b ? a = b, 1 : 0);
}

template <typename T>
T sum(vector<T> &A) {
    T tot = 0;
    for (auto a : A) tot += a;
    return tot;
}

template <typename T>
vector<T> compression(vector<T> X) {
    sort(all(X));
    X.erase(unique(all(X)), X.end());
    return X;
}

// input and output
namespace io {
// __int128_t
std::ostream &operator<<(std::ostream &dest, __int128_t value) {
    std::ostream::sentry s(dest);
    if (s) {
        __uint128_t tmp = value < 0 ? -value : value;
        char buffer[128];
        char *d = std::end(buffer);
        do {
            --d;
            *d = "0123456789"[tmp % 10];
            tmp /= 10;
        } while (tmp != 0);
        if (value < 0) {
            --d;
            *d = '-';
        }
        int len = std::end(buffer) - d;
        if (dest.rdbuf()->sputn(d, len) != len) {
            dest.setstate(std::ios_base::badbit);
        }
    }
    return dest;
}

// vector<T>
template <typename T>
istream &operator>>(istream &is, vector<T> &A) {
    for (auto &a : A) is >> a;
    return is;
}
template <typename T>
ostream &operator<<(ostream &os, vector<T> &A) {
    for (size_t i = 0; i < A.size(); i++) {
        os << A[i];
        if (i != A.size() - 1) os << ' ';
    }
    return os;
}

// vector<vector<T>>
template <typename T>
istream &operator>>(istream &is, vector<vector<T>> &A) {
    for (auto &a : A) is >> a;
    return is;
}
template <typename T>
ostream &operator<<(ostream &os, vector<vector<T>> &A) {
    for (size_t i = 0; i < A.size(); i++) {
        os << A[i];
        if (i != A.size() - 1) os << endl;
    }
    return os;
}

// pair<S, T>
template <typename S, typename T>
istream &operator>>(istream &is, pair<S, T> &A) {
    is >> A.first >> A.second;
    return is;
}
template <typename S, typename T>
ostream &operator<<(ostream &os, pair<S, T> &A) {
    os << A.first << ' ' << A.second;
    return os;
}

// vector<pair<S, T>>
template <typename S, typename T>
istream &operator>>(istream &is, vector<pair<S, T>> &A) {
    for (size_t i = 0; i < A.size(); i++) {
        is >> A[i];
    }
    return is;
}
template <typename S, typename T>
ostream &operator<<(ostream &os, vector<pair<S, T>> &A) {
    for (size_t i = 0; i < A.size(); i++) {
        os << A[i];
        if (i != A.size() - 1) os << endl;
    }
    return os;
}

// tuple
template <typename T, size_t N>
struct TuplePrint {
    static ostream &print(ostream &os, const T &t) {
        TuplePrint<T, N - 1>::print(os, t);
        os << ' ' << get<N - 1>(t);
        return os;
    }
};
template <typename T>
struct TuplePrint<T, 1> {
    static ostream &print(ostream &os, const T &t) {
        os << get<0>(t);
        return os;
    }
};
template <typename... Args>
ostream &operator<<(ostream &os, const tuple<Args...> &t) {
    TuplePrint<decltype(t), sizeof...(Args)>::print(os, t);
    return os;
}

// io functions
void FLUSH() {
    cout << flush;
}

void print() {
    cout << endl;
}
template <class Head, class... Tail>
void print(Head &&head, Tail &&...tail) {
    cout << head;
    if (sizeof...(Tail)) cout << spa;
    print(std::forward<Tail>(tail)...);
}

template <typename T, typename S>
void prisep(vector<T> &A, S sep) {
    int n = A.size();
    for (int i = 0; i < n; i++) {
        cout << A[i];
        if (i != n - 1) cout << sep;
    }
    cout << endl;
}
template <typename T, typename S>
void priend(T A, S end) {
    cout << A << end;
}
template <typename T>
void prispa(T A) {
    priend(A, spa);
}
template <typename T, typename S>
bool printif(bool f, T A, S B) {
    if (f)
        print(A);
    else
        print(B);
    return f;
}

template <class... T>
void inp(T &...a) {
    (cin >> ... >> a);
}

} // namespace io
using namespace io;

// read graph
vector<vector<int>> read_edges(int n, int m, bool direct = false, int indexed = 1) {
    vector<vector<int>> edges(n, vector<int>());
    for (int i = 0; i < m; i++) {
        INT(u, v);
        u -= indexed;
        v -= indexed;
        edges[u].push_back(v);
        if (!direct) edges[v].push_back(u);
    }
    return edges;
}
vector<vector<int>> read_tree(int n, int indexed = 1) {
    return read_edges(n, n - 1, false, indexed);
}

template <typename T = long long>
vector<vector<pair<int, T>>> read_wedges(int n, int m, bool direct = false, int indexed = 1) {
    vector<vector<pair<int, T>>> edges(n, vector<pair<int, T>>());
    for (int i = 0; i < m; i++) {
        INT(u, v);
        T w;
        inp(w);
        u -= indexed;
        v -= indexed;
        edges[u].push_back({v, w});
        if (!direct) edges[v].push_back({u, w});
    }
    return edges;
}
template <typename T = long long>
vector<vector<pair<int, T>>> read_wtree(int n, int indexed = 1) {
    return read_wedges<T>(n, n - 1, false, indexed);
}

// yes / no
namespace yesno {

// yes
inline bool yes(bool f = true) {
    cout << (f ? "yes" : "no") << endl;
    return f;
}
inline bool Yes(bool f = true) {
    cout << (f ? "Yes" : "No") << endl;
    return f;
}
inline bool YES(bool f = true) {
    cout << (f ? "YES" : "NO") << endl;
    return f;
}

// no
inline bool no(bool f = true) {
    cout << (!f ? "yes" : "no") << endl;
    return f;
}
inline bool No(bool f = true) {
    cout << (!f ? "Yes" : "No") << endl;
    return f;
}
inline bool NO(bool f = true) {
    cout << (!f ? "YES" : "NO") << endl;
    return f;
}

// possible
inline bool possible(bool f = true) {
    cout << (f ? "possible" : "impossible") << endl;
    return f;
}
inline bool Possible(bool f = true) {
    cout << (f ? "Possible" : "Impossible") << endl;
    return f;
}
inline bool POSSIBLE(bool f = true) {
    cout << (f ? "POSSIBLE" : "IMPOSSIBLE") << endl;
    return f;
}

// impossible
inline bool impossible(bool f = true) {
    cout << (!f ? "possible" : "impossible") << endl;
    return f;
}
inline bool Impossible(bool f = true) {
    cout << (!f ? "Possible" : "Impossible") << endl;
    return f;
}
inline bool IMPOSSIBLE(bool f = true) {
    cout << (!f ? "POSSIBLE" : "IMPOSSIBLE") << endl;
    return f;
}

// Alice Bob
inline bool Alice(bool f = true) {
    cout << (f ? "Alice" : "Bob") << endl;
    return f;
}
inline bool Bob(bool f = true) {
    cout << (f ? "Bob" : "Alice") << endl;
    return f;
}

// Takahashi Aoki
inline bool Takahashi(bool f = true) {
    cout << (f ? "Takahashi" : "Aoki") << endl;
    return f;
}
inline bool Aoki(bool f = true) {
    cout << (f ? "Aoki" : "Takahashi") << endl;
    return f;
}

} // namespace yesno
using namespace yesno;

} // namespace templates
using namespace templates;

template <class S, S (*op)(S, S), S (*e)()>
struct segtree {
  public:
    segtree() : segtree(0) {}
    explicit segtree(int n) : segtree(std::vector<S>(n, e())) {};
    explicit segtree(const std::vector<S> &v) : _n(int(v.size())) {
        size = 1;
        log  = 0;
        while (size < _n) {
            log++;
            size <<= 1;
        }
        d = std::vector<S>(2 * size, e());
        for (int i = 0; i < _n; i++) d[size + i] = v[i];
        for (int i = size - 1; i >= 1; i--) update(i);
    }

    void set(int p, S x) {
        assert(0 <= p && p < _n);
        p += size;
        d[p] = x;
        for (int i = 1; i <= log; i++) update(p >> i);
    }

    S get(int p) {
        assert(0 <= p && p < _n);
        return d[p + size];
    }

    S prod(int l, int r) {
        assert(0 <= l && l <= r && r <= _n);
        S sml = e(), smr = e();

        l += size;
        r += size;

        while (l < r) {
            if (l & 1) sml = op(sml, d[l++]);
            if (r & 1) smr = op(d[--r], smr);
            l >>= 1;
            r >>= 1;
        }
        return op(sml, smr);
    }

    S all_prod() {
        return d[1];
    }

  private:
    int _n, size, log;
    std::vector<S> d;
    void update(int k) {
        d[k] = op(d[2 * k], d[2 * k + 1]);
    }
};

struct RandomNumberGenerator {
    std::mt19937 mt;
    RandomNumberGenerator() : mt(std::chrono::steady_clock::now().time_since_epoch().count()) {}
    RandomNumberGenerator(int seed) : mt(seed) {}

    int operator()(int a, int b) {
        std::uniform_int_distribution<int> dist(a, b - 1);
        return dist(mt);
    }

    int operator()(int b) {
        return (*this)(0, b);
    }

    template <typename T>
    void shuffle(std::vector<T> &v) {
        std::shuffle(v.begin(), v.end(), mt);
    }
};
RandomNumberGenerator rng(23);

using S_ = ll;
S_ op(S_ l, S_ r) {
    return l < r ? l : r;
}
S_ e() {
    return 1LL << 60;
}

template <int MOD>
struct Modint {
    int x;
    Modint() : x(0) {}
    Modint(int64_t y) {
        if (y >= 0)
            x = y % MOD;
        else
            x = (y % MOD + MOD) % MOD;
    }

    Modint &operator+=(const Modint &p) {
        x += p.x;
        if (x >= MOD) x -= MOD;
        return *this;
    }

    Modint &operator-=(const Modint &p) {
        x -= p.x;
        if (x < 0) x += MOD;
        return *this;
    }

    Modint &operator*=(const Modint &p) {
        x = int(1LL * x * p.x % MOD);
        return *this;
    }

    Modint &operator/=(const Modint &p) {
        *this *= p.inverse();
        return *this;
    }

    Modint &operator%=(const Modint &p) {
        assert(p.x == 0);
        return *this;
    }

    Modint operator-() const {
        return Modint(-x);
    }

    Modint &operator++() {
        x++;
        if (x == MOD) x = 0;
        return *this;
    }

    Modint &operator--() {
        if (x == 0) x = MOD;
        x--;
        return *this;
    }

    Modint operator++(int) {
        Modint result = *this;
        ++*this;
        return result;
    }

    Modint operator--(int) {
        Modint result = *this;
        --*this;
        return result;
    }

    friend Modint operator+(const Modint &lhs, const Modint &rhs) {
        return Modint(lhs) += rhs;
    }

    friend Modint operator-(const Modint &lhs, const Modint &rhs) {
        return Modint(lhs) -= rhs;
    }

    friend Modint operator*(const Modint &lhs, const Modint &rhs) {
        return Modint(lhs) *= rhs;
    }

    friend Modint operator/(const Modint &lhs, const Modint &rhs) {
        return Modint(lhs) /= rhs;
    }

    friend Modint operator%(const Modint &lhs, const Modint &rhs) {
        assert(rhs.x == 0);
        return Modint(lhs);
    }

    bool operator==(const Modint &p) const {
        return x == p.x;
    }

    bool operator!=(const Modint &p) const {
        return x != p.x;
    }

    bool operator<(const Modint &rhs) const {
        return x < rhs.x;
    }

    bool operator<=(const Modint &rhs) const {
        return x <= rhs.x;
    }

    bool operator>(const Modint &rhs) const {
        return x > rhs.x;
    }

    bool operator>=(const Modint &rhs) const {
        return x >= rhs.x;
    }

    Modint inverse() const {
        int a = x, b = MOD, u = 1, v = 0, t;
        while (b > 0) {
            t = a / b;
            a -= t * b;
            u -= t * v;
            std::swap(a, b);
            std::swap(u, v);
        }
        return Modint(u);
    }

    Modint pow(int64_t k) const {
        Modint ret(1);
        Modint y(x);
        while (k > 0) {
            if (k & 1) ret *= y;
            y *= y;
            k >>= 1;
        }
        return ret;
    }

    std::pair<int, int> to_frac(int max_n = 1000) const {
        int y = x;
        for (int i = 1; i <= max_n; i++) {
            if (y <= max_n) {
                return {y, i};
            } else if (MOD - y <= max_n) {
                return {-(MOD - y), i};
            }
            y = (y + x) % MOD;
        }
        return {-1, -1};
    }

    friend std::ostream &operator<<(std::ostream &os, const Modint &p) {
        return os << p.x;
    }

    friend std::istream &operator>>(std::istream &is, Modint &p) {
        int64_t y;
        is >> y;
        p = Modint<MOD>(y);
        return (is);
    }

    static int get_mod() {
        return MOD;
    }
};

struct Arbitrary_Modint {
    int x;
    static int MOD;

    static void set_mod(int mod) {
        MOD = mod;
    }

    Arbitrary_Modint() : x(0) {}
    Arbitrary_Modint(int64_t y) {
        if (y >= 0)
            x = y % MOD;
        else
            x = (y % MOD + MOD) % MOD;
    }

    Arbitrary_Modint &operator+=(const Arbitrary_Modint &p) {
        x += p.x;
        if (x >= MOD) x -= MOD;
        return *this;
    }

    Arbitrary_Modint &operator-=(const Arbitrary_Modint &p) {
        x -= p.x;
        if (x < 0) x += MOD;
        return *this;
    }

    Arbitrary_Modint &operator*=(const Arbitrary_Modint &p) {
        x = int(1LL * x * p.x % MOD);
        return *this;
    }

    Arbitrary_Modint &operator/=(const Arbitrary_Modint &p) {
        *this *= p.inverse();
        return *this;
    }

    Arbitrary_Modint &operator%=(const Arbitrary_Modint &p) {
        assert(p.x == 0);
        return *this;
    }

    Arbitrary_Modint operator-() const {
        return Arbitrary_Modint(-x);
    }

    Arbitrary_Modint &operator++() {
        x++;
        if (x == MOD) x = 0;
        return *this;
    }

    Arbitrary_Modint &operator--() {
        if (x == 0) x = MOD;
        x--;
        return *this;
    }

    Arbitrary_Modint operator++(int) {
        Arbitrary_Modint result = *this;
        ++*this;
        return result;
    }

    Arbitrary_Modint operator--(int) {
        Arbitrary_Modint result = *this;
        --*this;
        return result;
    }

    friend Arbitrary_Modint operator+(const Arbitrary_Modint &lhs, const Arbitrary_Modint &rhs) {
        return Arbitrary_Modint(lhs) += rhs;
    }

    friend Arbitrary_Modint operator-(const Arbitrary_Modint &lhs, const Arbitrary_Modint &rhs) {
        return Arbitrary_Modint(lhs) -= rhs;
    }

    friend Arbitrary_Modint operator*(const Arbitrary_Modint &lhs, const Arbitrary_Modint &rhs) {
        return Arbitrary_Modint(lhs) *= rhs;
    }

    friend Arbitrary_Modint operator/(const Arbitrary_Modint &lhs, const Arbitrary_Modint &rhs) {
        return Arbitrary_Modint(lhs) /= rhs;
    }

    friend Arbitrary_Modint operator%(const Arbitrary_Modint &lhs, const Arbitrary_Modint &rhs) {
        assert(rhs.x == 0);
        return Arbitrary_Modint(lhs);
    }

    bool operator==(const Arbitrary_Modint &p) const {
        return x == p.x;
    }

    bool operator!=(const Arbitrary_Modint &p) const {
        return x != p.x;
    }

    bool operator<(const Arbitrary_Modint &rhs) {
        return x < rhs.x;
    }

    bool operator<=(const Arbitrary_Modint &rhs) {
        return x <= rhs.x;
    }

    bool operator>(const Arbitrary_Modint &rhs) {
        return x > rhs.x;
    }

    bool operator>=(const Arbitrary_Modint &rhs) {
        return x >= rhs.x;
    }

    Arbitrary_Modint inverse() const {
        int a = x, b = MOD, u = 1, v = 0, t;
        while (b > 0) {
            t = a / b;
            a -= t * b;
            u -= t * v;
            std::swap(a, b);
            std::swap(u, v);
        }
        return Arbitrary_Modint(u);
    }

    Arbitrary_Modint pow(int64_t k) const {
        Arbitrary_Modint ret(1);
        Arbitrary_Modint y(x);
        while (k > 0) {
            if (k & 1) ret *= y;
            y *= y;
            k >>= 1;
        }
        return ret;
    }

    friend std::ostream &operator<<(std::ostream &os, const Arbitrary_Modint &p) {
        return os << p.x;
    }

    friend std::istream &operator>>(std::istream &is, Arbitrary_Modint &p) {
        int64_t y;
        is >> y;
        p = Arbitrary_Modint(y);
        return (is);
    }

    static int get_mod() {
        return MOD;
    }
};
int Arbitrary_Modint::MOD = 998244353;

using modint9 = Modint<998244353>;
using modint1 = Modint<1000000007>;
using modint  = Arbitrary_Modint;
using mint    = modint9;

struct S2 {
    mint a;
    mint b;
};
S2 op2(S2 l, S2 r) {
    return {l.a * r.a, l.b * r.a + r.b};
}
S2 e2() {
    return {1, 0};
}

void solve() {
    LL(n, m);
    STRING(S);
    VEC(Pll, LR, m);

    for (auto &l : LR) l.first--;

    map<char, char> brackets;

    brackets['('] = ')';
    brackets[')'] = '(';
    brackets['['] = ']';
    brackets[']'] = '[';
    brackets['{'] = '}';
    brackets['}'] = '{';
    brackets['<'] = '>';
    brackets['>'] = '<';

    map<char, bool> is_left;

    is_left['('] = true;
    is_left['['] = true;
    is_left['{'] = true;
    is_left['<'] = true;
    is_left[')'] = false;
    is_left[']'] = false;
    is_left['}'] = false;
    is_left['>'] = false;

    map<char, S2> ab;
    for (auto s : {'(', '[', '{', '<'}) {
        mint a          = rng(1, MOD9);
        mint b          = rng(1, MOD9);
        ab[s]           = {a, b};
        mint inv_a      = mint(1) / a;
        mint inv_b      = -b * inv_a;
        ab[brackets[s]] = {inv_a, inv_b};
        auto res        = op2(ab[s], ab[brackets[s]]);
    }

    auto f = [&](string &S, vector<Pll> &LR) {
        stack<pair<char, int>> st;
        vec(S_, lef, n);
        fori(i, n) {
            if (is_left[S[i]]) {
                st.push({S[i], i});
                lef[i] = i;
            } else {
                if (!st.empty() and brackets[st.top().first] == S[i]) {
                    lef[i] = st.top().second;
                    st.pop();
                } else {
                    while (!st.empty()) st.pop();
                    lef[i] = -1;
                }
            }
        }

        vec(bool, ok, m, false);
        vec(ll, hash, m);

        segtree<S_, op, e> seg(lef);
        vec(S2, ini, n);
        fori(i, n) {
            ini[i] = ab[S[i]];
        }
        segtree<S2, op2, e2> seg2(ini);

        fori(i, m) {
            auto [l, r] = LR[i];
            auto ma     = seg.prod(l, r);
            if (ma >= l) {
                ok[i]    = true;
                auto res = seg2.prod(l, r);
                hash[i]  = ll(res.a.x) * MOD9 + res.b.x;
            }
        }

        return make_pair(ok, hash);
    };

    auto [ok1, hash1] = f(S, LR);
    {
        string T;
        for (auto s : S) {
            T += brackets[s];
        }
        reverse(all(T));
        swap(S, T);
        for (auto &[l, r] : LR) {
            ll nl = n - r;
            r     = n - l;
            l     = nl;
        }
    }

    auto [ok2, hash2] = f(S, LR);

    ll cnt = 0;
    map<ll, ll> cnts;
    fori(i, m) {
        if (ok1[i] and ok2[i]) {
            cnt++;
        } else if (ok1[i]) {
            cnts[hash1[i]]++;
        }
    }
    ll ans = cnt / 2;
    fori(i, m) {
        if (!ok1[i] and ok2[i]) {
            if (cnts[hash2[i]] >= 1) {
                cnts[hash2[i]]--;
                ans++;
            }
        }
    }

    print(ans);
}

int main() {
#ifndef INTERACTIVE
    std::cin.tie(0)->sync_with_stdio(0);
#endif
    // std::cout << std::fixed << std::setprecision(12);
    int t;
    t = 1;
    std::cin >> t;
    while (t--) solve();
    return 0;
}

// // #pragma GCC target("avx2")
// // #pragma GCC optimize("O3")
// // #pragma GCC optimize("unroll-loops")
// // #define INTERACTIVE
//
// #include "kyopro-cpp/template.hpp"
//
// #include "data_structure/segTree.hpp"
// #include "misc/RandomNumberGenerator.hpp"
// RandomNumberGenerator rng(23);
//
// using S_ = ll;
// S_ op(S_ l, S_ r) {
//     return l < r ? l : r;
// }
// S_ e() {
//     return 1LL << 60;
// }
//
// #include "misc/Modint.hpp"
// using mint = modint9;
//
// struct S2 {
//     mint a;
//     mint b;
// };
// S2 op2(S2 l, S2 r) {
//     return {l.a * r.a, l.b * r.a + r.b};
// }
// S2 e2() {
//     return {1, 0};
// }
//
// void solve() {
//     LL(n, m);
//     STRING(S);
//     VEC(Pll, LR, m);
//
//     for (auto &l : LR) l.first--;
//
//     map<char, char> brackets;
//
//     brackets['('] = ')';
//     brackets[')'] = '(';
//     brackets['['] = ']';
//     brackets[']'] = '[';
//     brackets['{'] = '}';
//     brackets['}'] = '{';
//     brackets['<'] = '>';
//     brackets['>'] = '<';
//
//     map<char, bool> is_left;
//
//     is_left['('] = true;
//     is_left['['] = true;
//     is_left['{'] = true;
//     is_left['<'] = true;
//     is_left[')'] = false;
//     is_left[']'] = false;
//     is_left['}'] = false;
//     is_left['>'] = false;
//
//     map<char, S2> ab;
//     for (auto s : {'(', '[', '{', '<'}) {
//         mint a          = rng(1, MOD9);
//         mint b          = rng(1, MOD9);
//         ab[s]           = {a, b};
//         mint inv_a      = mint(1) / a;
//         mint inv_b      = -b * inv_a;
//         ab[brackets[s]] = {inv_a, inv_b};
//         auto res        = op2(ab[s], ab[brackets[s]]);
//     }
//
//     auto f = [&](string &S, vector<Pll> &LR) {
//         stack<pair<char, int>> st;
//         vec(S_, lef, n);
//         fori(i, n) {
//             if (is_left[S[i]]) {
//                 st.push({S[i], i});
//                 lef[i] = i;
//             } else {
//                 if (!st.empty() and brackets[st.top().first] == S[i]) {
//                     lef[i] = st.top().second;
//                     st.pop();
//                 } else {
//                     while (!st.empty()) st.pop();
//                     lef[i] = -1;
//                 }
//             }
//         }
//
//         vec(bool, ok, m, false);
//         vec(ll, hash, m);
//
//         segtree<S_, op, e> seg(lef);
//         vec(S2, ini, n);
//         fori(i, n) {
//             ini[i] = ab[S[i]];
//         }
//         segtree<S2, op2, e2> seg2(ini);
//
//         fori(i, m) {
//             auto [l, r] = LR[i];
//             auto ma     = seg.prod(l, r);
//             if (ma >= l) {
//                 ok[i]    = true;
//                 auto res = seg2.prod(l, r);
//                 hash[i]  = ll(res.a.x) * MOD9 + res.b.x;
//             }
//         }
//
//         return make_pair(ok, hash);
//     };
//
//     auto [ok1, hash1] = f(S, LR);
//     {
//         string T;
//         for (auto s : S) {
//             T += brackets[s];
//         }
//         reverse(all(T));
//         swap(S, T);
//         for (auto &[l, r] : LR) {
//             ll nl = n - r;
//             r     = n - l;
//             l     = nl;
//         }
//     }
//
//     auto [ok2, hash2] = f(S, LR);
//
//     ll cnt = 0;
//     map<ll, ll> cnts;
//     fori(i, m) {
//         if (ok1[i] and ok2[i]) {
//             cnt++;
//         } else if (ok1[i]) {
//             cnts[hash1[i]]++;
//         }
//     }
//     ll ans = cnt / 2;
//     fori(i, m) {
//         if (!ok1[i] and ok2[i]) {
//             if (cnts[hash2[i]] >= 1) {
//                 cnts[hash2[i]]--;
//                 ans++;
//             }
//         }
//     }
//
//     print(ans);
// }
//
// int main() {
// #ifndef INTERACTIVE
//     std::cin.tie(0)->sync_with_stdio(0);
// #endif
//     // std::cout << std::fixed << std::setprecision(12);
//     int t;
//     t = 1;
//     std::cin >> t;
//     while (t--) solve();
//     return 0;
// }

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

4
8 1
()[]{}<>
3 6
2 6
)(
1 1
1 1
1 1
2 2
2 2
2 2
6 2
([)(])
1 3
4 6
22 8
([{}<<<<])>>>>([]){()}
3 8
11 14
1 10
3 4
19 22
20 21
17 20
21 22

output:

0
3
0
2

result:

ok 4 number(s): "0 3 0 2"

Test #2:

score: 0
Accepted
time: 144ms
memory: 3676kb

input:

10000
50 50
]][][>([<)}{>(([<<>[]}[}>(}([}[><[}<[}<<(]]<>[]>)<
16 50
19 31
6 34
19 49
14 44
26 49
10 43
28 49
13 16
23 39
4 26
30 43
20 27
10 20
25 44
12 42
27 34
2 8
29 44
11 42
18 42
1 4
1 47
31 31
26 47
22 44
16 35
15 48
35 41
17 20
11 13
20 21
9 45
13 46
33 47
35 46
22 26
2 37
14 39
34 34
41 44
...

output:

0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
2
1
0
0
0
0
1
0
0
0
0
...

result:

ok 10000 numbers

Test #3:

score: 0
Accepted
time: 74ms
memory: 3692kb

input:

1000
50 500
[]]})<{>]){[[><>[{](}}{<(<)<{]{><><}>([[{(}(><}>{]
25 46
19 30
23 41
27 34
5 11
8 42
40 46
24 34
7 47
44 45
13 13
9 44
18 32
12 23
24 38
35 49
31 36
14 46
2 9
7 44
27 41
15 22
42 44
21 49
27 50
28 36
6 26
15 47
22 40
6 25
25 43
5 45
19 19
10 40
6 20
30 36
39 44
14 32
17 31
7 47
24 34
2 8...

output:

3
6
11
4
6
6
3
4
5
9
6
5
6
6
3
4
7
4
1
2
11
3
3
2
4
9
5
13
5
8
4
4
4
3
2
1
4
4
3
5
6
4
7
8
3
6
7
5
4
4
5
2
2
7
3
6
3
8
13
5
0
2
8
2
6
2
12
2
4
3
4
3
4
7
2
3
9
7
4
12
1
2
4
5
6
4
4
3
3
7
5
6
6
10
9
8
8
9
3
3
5
6
0
7
9
8
3
3
5
2
4
9
7
6
10
3
4
5
4
3
7
3
5
7
4
2
3
2
7
4
4
4
6
10
3
6
8
8
6
5
2
3
4
3
6
4...

result:

ok 1000 numbers

Test #4:

score: 0
Accepted
time: 73ms
memory: 3880kb

input:

100
50 5000
[)[){>})}>>][<>}[{{))}<(<]}[})>>})<)[((({}<}>}}>[[
38 49
47 48
43 46
5 50
8 11
21 29
11 32
8 8
9 13
1 18
35 48
12 12
24 45
6 19
13 42
30 37
23 41
17 21
40 43
3 31
3 11
9 31
17 35
1 49
9 50
43 47
1 9
8 43
11 19
40 47
6 42
7 31
23 37
30 46
5 30
33 38
8 25
21 39
1 1
27 31
15 35
9 11
7 37
26...

output:

54
99
81
80
54
68
58
33
67
78
73
78
86
95
74
46
101
99
89
82
85
57
53
96
112
76
91
72
42
78
98
72
77
106
63
76
60
91
83
68
64
69
106
77
81
66
41
73
93
61
58
55
63
51
43
78
48
71
134
64
69
112
53
73
61
50
80
91
79
63
75
80
49
62
75
80
78
54
59
48
55
73
63
71
69
94
69
51
87
68
69
102
61
70
61
80
54
62...

result:

ok 100 numbers

Test #5:

score: 0
Accepted
time: 67ms
memory: 5260kb

input:

10
50 50000
[(>><<)>][<]<>>>]{>{>{<({>[[(>[[<{)>]()>[{}]))}>[(
15 24
12 46
2 21
3 38
13 31
3 29
24 37
11 27
11 24
21 42
14 15
15 23
15 45
11 19
17 45
2 16
38 49
9 32
18 30
17 46
29 35
16 24
16 44
31 50
37 45
25 50
39 46
14 46
45 50
21 36
6 14
16 39
38 47
21 22
22 32
14 46
5 31
39 41
37 48
23 33
10 1...

output:

804
1376
493
630
817
973
747
761
810
694

result:

ok 10 numbers

Test #6:

score: 0
Accepted
time: 68ms
memory: 22892kb

input:

1
50 500000
({>([[[]>)>)[)(<<[}({]>{){<[}}{{}}(]){{[>)()<{{]{}
39 42
2 15
13 38
8 15
39 50
2 11
9 33
11 47
28 39
26 29
7 33
38 39
19 25
3 24
11 38
6 30
7 32
8 34
12 50
21 27
26 39
20 46
27 32
46 48
30 41
22 48
32 37
17 26
28 31
23 29
24 40
10 43
28 49
39 45
40 45
24 28
11 29
10 27
21 31
10 18
1 38
7...

output:

9905

result:

ok 1 number(s): "9905"

Test #7:

score: 0
Accepted
time: 148ms
memory: 3680kb

input:

1000
500 500
)<}]<{>((]>]<[}}[}>{[]][[((}(}<<>])[}{[{{[<){<}[([{}}>{}<((<[}][{[(<[}(}>]({[]({})}{<}>})[{{{>]]))[>(>)][}}}>[<{))((>{<[]{[>{[>)}[(<{]}>{(}[])>)}]()>{({{({>{><}({([>>}(}{)}<[]]><[(<}}]}}[}]{(}[>{][}(<}[><)}]]))(]{(<(}][()]}{{{{){{<[{))]](<(]>({[{)[{]<(>]<>}[<{<}([])><{}{[]}}[>))[[]}<]}[...

output:

0
0
1
0
0
1
0
0
1
0
0
1
0
2
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
2
1
0
1
1
1
0
0
0
0
0
0
0
0
0
0
...

result:

ok 1000 numbers

Test #8:

score: 0
Accepted
time: 92ms
memory: 4124kb

input:

100
500 5000
}(>]<{[>}>)(><<})(}<[](]{}]<<]>{{}]>}(<>{]>{)[<<}<(<)]<[>)<{>{){{{][}<>}{((<[))})><])>)>{(<[)(>[{<([}<{)})<>{[)]<))>){([()[}]<)>}[))}(}]}])}<}}>[<()){]]}}[>}<>[}>>>}}[]<>>[([<)>}{[)}]])[>>()[]<(([}{{[><[}][[){>{([[<)>[>}[}(]([<{<}[>(>(<<]]()[(}[(<}{}{)}{]()>({>){[[[{<)>({>(((])[>[)<{(}]...

output:

7
5
9
2
6
4
3
12
5
5
2
3
7
6
3
8
9
9
10
9
3
6
7
6
8
2
13
6
7
2
5
6
5
7
4
8
5
4
4
5
5
6
9
7
6
5
1
3
1
7
7
2
10
3
6
3
5
6
12
5
13
4
14
4
6
5
4
7
4
3
3
3
7
7
3
5
6
4
6
5
10
1
6
6
2
2
6
8
4
4
5
6
4
2
8
9
4
10
4
4

result:

ok 100 numbers

Test #9:

score: 0
Accepted
time: 95ms
memory: 5660kb

input:

10
500 50000
]}){>(](][]>>[]}>{(>][](<)]((([({}{>[>](<{}[>}{>)<}}{>[([}(<})[)<({)>)(>][{]({[({[([}<<>>{[][}>[[<)[}<]<)]){]<<(([(>()>}<>)>[})[>>][}>[{((]{>]>><}}]{>}[<}<][())}{][<[>)(>[{{]}<{{><)()>><><{<}>{{()())}[[<][>){{}>)(})])]<)>>(}}>[>]])(}((([<[[}[{](}><{[][]{>[<<[{>)}]))><[((<([<])(]()}{]({{...

output:

104
101
118
107
118
122
136
107
109
113

result:

ok 10 numbers

Test #10:

score: 0
Accepted
time: 95ms
memory: 23020kb

input:

1
500 500000
<[)[}](<}[{}>{>>()(><>){>>>([<<{]}][{[([>}]}}{<}[>)]<{{(}{<}({)[[<[]{}<<[{(<{({]<)(((}}{<<[)(>)({[)]>}[[(({><(([{(}}{]}()]}<]}(>>]}}}(}>((<()}[(}]([[}[}<}<{((<<}(><{(}]]]<)(<]>([[(]]<[<]})(>)}})(><}}(>{{](])<}}[}<}(>>}]>)]]{><>)[}[<<()}]}<<{{(]]{)}]{>}}[]]{(}])[<]>){>(])}<(})]>([[>)]]<)...

output:

1109

result:

ok 1 number(s): "1109"

Test #11:

score: 0
Accepted
time: 178ms
memory: 4008kb

input:

100
5000 5000
[][]}(<{>{(](}]>}<>}(]<}})(]<]>>(<{}{<(<><{<[}[{[{){)){(]<{]][[}]><[>[]]]>(](]([{(]<<{]<<[(}]>{}]<()>}})]<{[]>>{)[}[(<[}{{{[>[>><{[[[<([(]){))<>]]((<})>>{)(({]]<>}}[}{})<}>{[}}))](({(]<[<)}]<[[)([<[>[<([}])}{]><]<(([)>]{<)[]])][<<][(((<><}<)[)((]([)[([{<<<>(>{]>>{}<}(<)}]{{}>>{(}}]<)<(...

output:

0
0
2
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

result:

ok 100 numbers

Test #12:

score: 0
Accepted
time: 126ms
memory: 5656kb

input:

10
5000 50000
}}>]]}][()]]{)(>)[)>({>{{}>}{}]{<())>>[}]>{)]()}[><)({}>>}]<))[)><(<]{>(>(]<{[>)}>([)>(){({><)>}[(}])})[}}>[<>[}([>[]<)][<]>}{))>}>>()(]]{(<)(](}){)>><{)(><}](]{}<[(({{]>>)<{([{]<({{){[{(}<{{}])]{)]<{{<]]{]]{](}<[{[]{{>]()<<](}<{(}]>>{{]<{}{()])>>[>>[({)}>{[{<()))[{[}]{)}<{]([<[(]<]{)}...

output:

7
3
8
9
8
7
5
6
3
8

result:

ok 10 numbers

Test #13:

score: 0
Accepted
time: 122ms
memory: 23336kb

input:

1
5000 500000
>([><])])><{<>)(>[>()]>[)[<<[){[(>}<()[)}{}[}{(>[)>[[})<(>]<([}><>[[(>}]()>{][[[{()>)<}>}{[]}{>)]<[)<{[[(>]]>(}[{(})>)]])[]{(<{><<{}]]){>})<)<]<[({>[]{{[><)))])(}(}})]]{][})}{<>(}){}>[]<{[(]}>(<<)<(>>>){(>{<][()>{({]){{><<()}<<[<>}<(>)({]]]](<[]]])<]<)[)<([>)>]<<[(<){>[[([)<)>>}]()[>{}...

output:

117

result:

ok 1 number(s): "117"

Test #14:

score: 0
Accepted
time: 192ms
memory: 9096kb

input:

10
50000 50000
][[<(}{{[{[<<(<}>)[<[)))][]}<]}[>>>}[}{({)}>>[>{[[(]>)<>{[(][}][)]<([}<>]<]]>{)<{](}][}(]]><}>[>)(>()<[])]]{}><}]{]]{[<<(}(}>[{((<]{<>(]}(})[[}()<>}{])(]<](<}(}}]){)()>(<)[{}<>}><]]}>>{((>{(<<()))[){>({((}()]>)(<><>){[(]({>{)>])[]){>[))}{>[>]]{[()([{[][([<)<(<(}(}}({>[(>><<)>][<]<>>>]...

output:

0
0
0
1
0
1
0
0
0
0

result:

ok 10 numbers

Test #15:

score: 0
Accepted
time: 151ms
memory: 25964kb

input:

1
50000 500000
<<[})>}]{]}{>)]]{{{}){(])<{{]((()<[<]([>[){(}[){>}<(<[]<<}{[{<{({><{{[[(<)<[[{[])<])]()}[}(<}{]}<[{>{}<<[[{(<><<][]<>([[<<>>}{}>(<<>{)}[}{{{[{<>{<<[])<}))[<{<[>(]]}]>>](>(}}[)}{{}[}]<{]}>)](]](){([<{)[{(]>)>){[>>>>)){[([){<}>(((><}{[)[>([))]]}[){>]})}(})}}<)><{((}]((>)]}>){}[)[)[{({{[...

output:

5

result:

ok 1 number(s): "5"

Test #16:

score: 0
Accepted
time: 234ms
memory: 48516kb

input:

1
500000 500000
>}<(]){){[<)<[)(<[<})<)>]}]>)[[](<{}]]>[([{{{<>(]>))()<]][((<>[>(>}([<<){{<{){)><}([>{>}](>>]}}(>[)((](}>>])}]<[)}))})]])([]>{]<}<)}<(<>)]]{)]<]]}>}]([>>)({[}})]]](]><}])>{]{)){>><(>{){])]}>[[([)>(([)](<)<<({}][{{()>)>}<<[]({[]{]))[]((]>[[{}>)(>[[]{]}>><<]>]>><{{)])}](>>[{}]))<<{>)(}...

output:

0

result:

ok 1 number(s): "0"

Test #17:

score: 0
Accepted
time: 288ms
memory: 26224kb

input:

1
50000 500000
(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((...

output:

208440

result:

ok 1 number(s): "208440"

Test #18:

score: 0
Accepted
time: 220ms
memory: 5784kb

input:

10
5000 50000
((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((...

output:

20871
20772
20815
20864
20869
20894
20859
20778
20929
20988

result:

ok 10 numbers

Test #19:

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

input:

100
500 5000
(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((()))))))))))))))))))))))))))))))))))))...

output:

2098
2095
2104
2080
2090
2048
2090
2092
2063
2099
2110
2083
2083
2084
2066
2077
2069
2128
2097
2054
2056
2094
2076
2062
2061
2060
2103
2086
2116
2061
2090
2099
2075
2097
2084
2115
2113
2141
2025
2124
2080
2056
2086
2079
2074
2094
2069
2066
2135
2117
2067
2099
2081
2082
2086
2090
2083
2080
2093
2082
...

result:

ok 100 numbers

Test #20:

score: 0
Accepted
time: 115ms
memory: 3896kb

input:

1000
50 500
((((((((((((((((((((((((()))))))))))))))))))))))))
16 37
28 47
8 41
13 47
6 9
7 11
22 27
14 18
29 45
7 43
34 45
5 29
24 28
5 26
24 46
3 11
1 13
27 40
10 43
34 40
3 48
40 50
22 42
10 40
1 24
10 42
17 24
6 24
26 45
7 38
1 32
9 39
22 43
14 50
9 47
11 39
14 17
5 28
28 42
7 44
27 34
7 11
27 2...

output:

204
198
212
215
203
200
209
197
194
207
203
196
214
216
204
196
205
207
207
202
206
199
208
208
206
213
209
211
209
211
211
211
195
209
213
215
195
199
213
196
198
203
214
208
212
216
205
216
210
216
199
196
208
213
217
212
214
209
201
207
218
204
206
199
211
208
204
213
200
214
205
220
206
215
208
...

result:

ok 1000 numbers

Test #21:

score: 0
Accepted
time: 77ms
memory: 3564kb

input:

10000
5 50
(()))
3 3
4 5
3 5
4 5
2 5
3 5
4 5
1 3
5 5
2 3
2 5
3 5
1 5
4 5
1 3
3 3
2 5
1 5
2 5
1 2
2 5
2 2
1 5
4 5
2 4
5 5
5 5
2 5
2 2
1 2
3 5
2 5
1 5
2 5
2 3
4 5
1 3
4 5
2 2
4 5
3 3
1 4
3 4
1 3
1 4
2 4
2 4
5 5
5 5
1 4
5 50
(()))
3 3
3 4
4 5
2 4
3 4
1 2
2 5
3 5
1 2
1 1
4 4
4 5
5 5
1 2
4 4
2 4
3 5
3 4
...

output:

11
13
17
14
14
11
19
13
14
22
14
9
16
19
14
13
11
13
16
16
19
16
16
14
10
16
15
17
18
19
14
16
17
17
17
19
20
12
12
12
21
13
16
13
16
14
13
19
16
13
16
18
15
19
15
15
19
13
15
15
11
13
18
17
9
15
21
14
17
17
12
13
15
11
16
17
13
13
12
15
11
16
20
21
16
14
14
14
16
12
20
17
12
17
19
15
19
15
16
14
20...

result:

ok 10000 numbers

Test #22:

score: 0
Accepted
time: 280ms
memory: 50136kb

input:

1
500000 500000
((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((...

output:

248787

result:

ok 1 number(s): "248787"

Test #23:

score: 0
Accepted
time: 141ms
memory: 48600kb

input:

1
500000 500000
[}<(>[<[([)]{(()}{(>][)])[[(<[][<>){>(}}{]}<}<[<}>)<]{[<[}{<(}><]{(<>>(<)><((<()<}<{])(<[)[]][>(>]]>>)(<<{[([(][><(>{()}](}<}[{({}]}(}{{]{]<}}[)((}){)>[}){>(]}>[(>[){{((<([({}>)}()}})}<{>>]>[]><>}[{([<])}]}{]]{<>>](>([<}<<]<}<{<]>(]{[><<)(}}}({(][>[[[)[<)(]({<}}}[[[(}[<><>)><[})}{{[]...

output:

53182

result:

ok 1 number(s): "53182"

Test #24:

score: 0
Accepted
time: 153ms
memory: 48652kb

input:

1
500000 500000
](([>{)<([(]>[>)]]>{]<)}}{<>]](])}<{(({{<>(}{>>)<]<]>)){[]>>[>]{]>})<[>{)))[}]<{<)}}>[(}])()}[>()({>)[]<)[[)[}<)]}{(][((){)}{]]<{(](>)>]{){]{}<(](]<{((<[<]]([><[}]][<][{<<>[]<)()]>){(<(>{{((])})])))>]()>}{(<})(])[<)([}<>{{(<{]]({[{<(][}[]>]>}]<><)})[)}}<{}({][][){}]{>{{(](({})}[{]}]{...

output:

5475

result:

ok 1 number(s): "5475"

Test #25:

score: 0
Accepted
time: 158ms
memory: 48384kb

input:

1
500000 500000
>((>)(([(){}}[(({}]>>>(]{{<>[((}(><<><[}]>{}})><{<){>{>({}>}}<{{<]})([<])]}([><<><(]]><>){>}{]><(<{}<{)]{<<}]]<)({>}](<([)(>><[)<>]{){}<{>>{(}}<{(<)>(}{(}[]>><>)>[{>]([>}(}[}}}{]<>(<}))>][[<[(>{[([(})>][)(]}>)]<>}[<[>(}][{>[[([})])[]<{>[(<][[<)<{<{[<><<(]>)[[}{{<<](<>(]<(((<<]{>((])]...

output:

474

result:

ok 1 number(s): "474"

Test #26:

score: 0
Accepted
time: 178ms
memory: 48384kb

input:

1
500000 500000
{}][>>]]{}]}]]<(}](}]>][((][[[[[}}}<(<{)}]<(}]]([{({{]>(}({(}>)[<([>(>[<>}}[(}{>(({(})>{[[)}><{(>{{>)[{[((()])){}}{{<[]>(<[>]>]{)]]}[(]][}>><>[>]<)}>}]><}((<[><]{}[{(}]{}]][((()()})[(<{<)>[(<<}({}<[{)<>]}<][(>}<[]))][)>}<([}(<><(>>})]><[((<<]>>}]<>)<[)[[][[<>}[<<(][>}<>[[}{})>>(((<([...

output:

45

result:

ok 1 number(s): "45"

Test #27:

score: 0
Accepted
time: 211ms
memory: 48524kb

input:

1
500000 500000
{{)<]]>><>()))<>[<}<}{()())}({}<][<){[>(]){)[>>>)){>[}<}}(>}<]{[[[>[<{{>(<{({(}<(<>>(((>][)[]}(]){{)(({{}}({}]<]>}><<}>>(<(<))>]))<<[<)(]<)>(>{<>>[[{{[<<{]((>][)({[{>[[))<([><>>][}[<)]{}[(<>]<))<]>[>[>>>(}({>>)><)[{<[(}>}[()){{])>((}>}}>{>}>)>}(({((}}]{<([[)>[{<<}{)<)][})({{[>)>>>{)<...

output:

6

result:

ok 1 number(s): "6"

Test #28:

score: 0
Accepted
time: 147ms
memory: 48372kb

input:

1
500000 500000
{}[()]{}<>({}<[]>)[[{}]]<><><()>{{<<>>}{<>}}{}(<>)[]<[[]{}]><<{}>([[]<(<<><[[]]>{[{<<>(()){{{}[[{((){()((<>{(){<>}[{}()<()>[((()))]]}))})[[]]}<{}[((){}<>){[<[(<><><[<<[]>[]>]<[]>{<[<>]<()[]><{{}<<>[{{{{<>}<><<>{}>}}}{[]}]>}>>}<>>)]>]()}]{()<{}>}{}>[]()]]()[<>]{}}}{}()([]{})>}]<{}>{<>...

output:

142356

result:

ok 1 number(s): "142356"

Test #29:

score: 0
Accepted
time: 178ms
memory: 48316kb

input:

1
500000 500000
[{}]{}<>{}{}{}[][[{}[{(()[()])}]]()<()(<>{}[[()]])[<>][]>(<><{}[]>()[])]<[]<>>{[{}[][()]]}<>[{((){[{}[{<>}({[[]{}]([]<()<[]>{}><{[]}>{[][{}]})})()]<>]}<[]>)}(){}]<>()()(<>)()[(({}))<>]()()()<()[{}][][]>{}{}[{}]()()(){()[((<{}>())<()[[[]]{(()())(([][])(<>)<<>>)({})()}]>{}{()})]}(){[{<...

output:

38282

result:

ok 1 number(s): "38282"

Test #30:

score: 0
Accepted
time: 179ms
memory: 48248kb

input:

1
500000 500000
{}<>()()[]{}<>()[]{}((<[[(<>()<{{{[[{}]]}}}[<<[]>{(){<[<>]>}}>[]<{<({{{{}}}}[])>([]<<>>)<{}()(){}>{}<()>}>]<>>)]<<<>><>{}[([])]{{[({}[<([[[]{<()<><><{{}}[]({<><>}<><[()[()]][]>{}{})>[<[]>[]]>}([(<>())]){[]}<>[]]<{<<<>><[]<()>>[<[<[{([]{})<(())([(())]<>)[]<(){}>>}]>{}{}]>]<<>>>{}<>}()...

output:

4449

result:

ok 1 number(s): "4449"

Test #31:

score: 0
Accepted
time: 199ms
memory: 48512kb

input:

1
500000 500000
<>[]{<[[]]{{[]}}>}<[<>][]>[<{{}[[]]}>][][<>[{(<><>)}{}]]<<>(([]))><[()]<()>>[(<>[])]<>{()()[[][]]<{}>{[]}}[[{()<>(){{[]}[]}[<>]{[]()}()}[]]<>][]<>{}[]<>[{}]()<<[]<<{}>>{()}>><>{<({}[]<<>>)>([][(<{[[<><()><>[<><>([[<>([])]][{}<[([](())){}]()[]>{{}}])[]<>{{}}]]({{}}[]()()){{<>{[]}<>}}]...

output:

375

result:

ok 1 number(s): "375"

Test #32:

score: 0
Accepted
time: 206ms
memory: 48564kb

input:

1
500000 500000
[{}<>]{}{([{}])<{<{<{([[<([]<<><{[](()){[[[()][]]]}}[]{}>>{([][])}[{<>[]<[<>[]]>}])>{<(({})()){}{<><(<><[[{[<<>>]<>}[{<()<>[]>}]]<>{}()<{<>}[{}]{[{}][[()({{<<>>[(<>)]}})[]]]<>()}[[]<>][]>]>[][{}{}<>[<(){}[]>()]]<<({}[{<>[]{}<>{}}<{()}>]())>{}>){()}>(<>)}{[{}]{(<>)}[](()[()]<>)}>{[(<>...

output:

42

result:

ok 1 number(s): "42"

Test #33:

score: 0
Accepted
time: 131ms
memory: 48520kb

input:

1
500000 500000
(((()()(())(())()))()()())((()))()()(())(()((())()()))()()()(())(()()()(()))()(()())()()(())()()()(())()()()()(()(()()))(()())()(((()()))())()(((())(())())()(()))()()(())()((()()()()()(())(()((()))()((()(()))()))()))(()())()((()))()(()()(()(()())())((()((()((())()(()()))())(())())())...

output:

152712

result:

ok 1 number(s): "152712"

Test #34:

score: 0
Accepted
time: 151ms
memory: 48472kb

input:

1
500000 500000
(()())(((())((()())(((((())(((())))())((((()()(((())(()))()))(())))()(())()((())(((()()()()))(())))(((())()(((((((())(((())))(())((()()))(()()()))((()()(()())()))(()(()())()()((())))))()()))(((())(((()()(())))()(()())()((())()((((()()()(())(((()((())()()))))()((())(((()()(())(()((())...

output:

67010

result:

ok 1 number(s): "67010"

Test #35:

score: 0
Accepted
time: 169ms
memory: 48364kb

input:

1
500000 500000
(())(()(())((())(())))()(())()()()((()((()(()()((()))((((()))((())))(()()(((((()))(()(()))(()))(())))))))(())()(()())(((()((()()())())()()))((())()()(()(()(())()()))()()()()))()))(())()(())(((((()()())((()())())())()((()(())()((()))())(()(((((((()(())(()())((()()()()))()(((((()()))()...

output:

23151

result:

ok 1 number(s): "23151"

Test #36:

score: 0
Accepted
time: 172ms
memory: 48376kb

input:

1
500000 500000
()()((()))(())((((())(()()))((())()((())(()()))((((()((((())))())))(())())((())(())(()((((((())((())))(()())(((()))())((()(())()))))()(((((())(()())))())())(())()()((())))((()(()())()()(()(((()())())(((()()(()))()((())))())(()())()))()))))))())))(())(((((((())))((()()())())(())(((()(...

output:

7026

result:

ok 1 number(s): "7026"

Test #37:

score: 0
Accepted
time: 195ms
memory: 48568kb

input:

1
500000 500000
()()((()))(())()(())(((((()((((((())())))))))()(((()))))(((((())))(()(())((())())((()))))))())()(()()())(()(()(()(())())()(((()(())))()()()))(((())()()()()()))(()(((())(((()()())(()(())(()((()))(()))))()))))())()((()((())())))(((()((((()()()(((())()()((()()))))(()(())))(())(((()))))(...

output:

1762

result:

ok 1 number(s): "1762"

Test #38:

score: 0
Accepted
time: 500ms
memory: 51036kb

input:

1
500000 500000
{(([[{[((({[([({[({[<(([{[<[{(<{<<((<{{(<<[[{([{{<{{([{((({<<<[<<{{{<<([({[[{{({[{[{<[[<[<([{{[[[[{[[([{({([([{{{{<([<<{<{(<<[(({[([{[(<{[[[(([{[{{[[(({({{{{([{([[([<{[{[([{(<<<{(<<[{[({{(((([[[(({({<[[[{<(((<{((<<<[[<[<(([(([[({{<[[{[<{({[[{{<{[{[[<{<{([<{{((<((<(<<[<(<{{<<[<<({<([{...

output:

1

result:

ok 1 number(s): "1"

Test #39:

score: 0
Accepted
time: 501ms
memory: 50956kb

input:

1
500000 500000
(<[<({([[{<[[<<<[([<({<(<{{{(<<[{{<({([<{(({[{{(([{(({<<[<<(([[{{{<{(<(<[<((<<<{{({<<({<{[<<(({[{<<{((((((<(([([<([<[<[[{({<<[{[[{{{({{{[{{[[(([([((<(<({[([{{{{({((([<{<[(<[((<(([{<[((({{<<[[([<[<{[({<[[{({{{<<{{((([{[{<([<({[{<({((<<{<<(({{(<<<(((({{((<[[{[{[[[(<[{[[[([(<{{[[[<<(<{<...

output:

1

result:

ok 1 number(s): "1"

Test #40:

score: 0
Accepted
time: 514ms
memory: 51040kb

input:

1
500000 500000
<{<{<<<{<<<(<[<<[<[((<[{[([<[{{(([[[{{({([<<<[<[{<[<<(({{{<[{<([[{({(([[[({((<<[<{{<{<<(<<[[<<{[<[<{<({{<{<<[(<([{({[({<[{<<(([{[<<<<{<[[{<({<<(<[[<(<{{<<{<[(<{<<{<{<[{<[(((((<[{<{([[{[<[{<<{([[{{{{<{[[[{{<[(<[[<([[[<((<[<[(<[<{{<[((({{([{({{<<(<{{{(<{<{(<{(<[{{<(<[<({[([[{{[(({[[<<(...

output:

0

result:

ok 1 number(s): "0"

Test #41:

score: 0
Accepted
time: 505ms
memory: 51080kb

input:

1
500000 500000
{{(({<{<[[<((<<([<({[(<[{[(({({(<(([[(<[<{{({((<({[[{[[[<{<[<[((({{{[([<{[[([({[(<<<[[<([[({[[<(((({{((<{({{{({{{({[[[<{(([<((<<((([[<[<(<((({{<[(<{{<[(({({[{({{([<[[<<<(([<((<[(([[[<[{<([{(<<[<([{{{[<[({<[(<<{<[({<[(<[<[[<([[<[(<{<[[{[[{([{((<[{<([<(({[([{<({(<<((({(({{<{[[[<{{<{{([...

output:

0

result:

ok 1 number(s): "0"

Test #42:

score: 0
Accepted
time: 537ms
memory: 51104kb

input:

1
500000 500000
[<{<{<((<[<[{{({(<[<[(([<{[{<{(<(<[[[({{<([({(<[<[<[(<({(<{<<[{<<<[<{[{<[<[[{{((<{[{[[{<<<(((([[({<(<({<(([[({{{[<{<<<{<{{(({<{<{({({(({[[([<{[<<<<{{<{{<[(({((<[{[<[{<[{{<(<[{(<{[[<<(([<{<{[<({{<[<((<[[<<((<<(([<[<<{[({[[[<<<{[<[([([([(<[{{<{{[([<{{({{(([[{{[([(([{{([<{{[{{[[(<({<(({...

output:

0

result:

ok 1 number(s): "0"

Test #43:

score: 0
Accepted
time: 225ms
memory: 49272kb

input:

1
500000 500000
[<<<<{<{<({<{<<{({{[(([[[(({}<([<{{[[({<>({<{[[<{{[[[(<{[()]<<{[{}{{}<<(((<[([[[(<{[(({[<<<([([[<[{{{[]<><((<<({{((<([(((({}{[(<<[{{{<[[[({[[[{(<>[<><<([<{<[(({<<({[({{([{[({<{{{(((((({[{[{(({(((<{}({(<[[<{[<>]}[<(<[{[[((((({}<([<<<[([{[(<{<<[<>{(<<(<[({<({(<><[[<<<((<{((<<<([{<{}{({...

output:

162821

result:

ok 1 number(s): "162821"

Test #44:

score: 0
Accepted
time: 360ms
memory: 49264kb

input:

1
500000 500000
{}{{[{({{[<>[[]([<{({{{([<{[{<([{[]<<<{(({[<[{<[[<[<(<><({({{{[]}{[]([()][{<[[({()[{{((((([][<({}<([((<[({<(<>(<<<<(({({[[{{<<[[<<(){<[<(([({}<[{{{<[<<<()<<{[{({<{([<(<[]{{}{[[{{[<[[[(<><><{}{(<>)(({{[{<[(((<<<([{({<(({}<(<{[(<({(([{[<[<<[[[[<<>()<<<((<[(({<<[<[[<<{[{{<{[[][[[[{{{}{<...

output:

16576

result:

ok 1 number(s): "16576"

Test #45:

score: 0
Accepted
time: 403ms
memory: 49420kb

input:

1
500000 500000
{([((([<>[{[((((<({{({[([{[]{<[{[([{[<<<{({([[][[(({[[<([{([{<{([{(<(<(<>{[[(({<({[]<[<>[<{<(<([<{(<[()<[{<<[((([[({[[<{(<{{[{{{{[((<<>[[<<{}((<({(({(([{({{{<[<><{<({[{{({[]{([<{<[{<<((<[[{{[({{[{(<{<[{({{[[<([{{[{({([<><((<{(([<<[(<<(<(<[[[<{[([<{}{({(<{{{{[[<<[[(){}<[({<><([()[[(<(...

output:

1262

result:

ok 1 number(s): "1262"

Test #46:

score: 0
Accepted
time: 436ms
memory: 49156kb

input:

1
500000 500000
{(([[{{}{<{()[]([<<<>{[(([]({}<[((<{[]<[[]<({[((<[[[{[{(({([{([<[({[<<<[<<{(()[<{[{(<[[[[][](<(<{<{()()[{}{}<<{}<(([[{[<[((<[[<{(({([{(<>{<[[{({[{}[[[{<[{{{(){<[[[<{}((((<(<([<(<((<[<<{[[{{{[[<{{[{}<>({{({[[<(<{{(<<{{{[()()[[()]<{<({[(([[[({[]<{[[{<[([()((([]([[[((<<[<(()[]{{<<<({{[(...

output:

340

result:

ok 1 number(s): "340"

Test #47:

score: 0
Accepted
time: 451ms
memory: 49284kb

input:

1
500000 500000
[[]<<<[(()(<()(<<(<[({{[{[{[(<{[[][<{([[({<<{<[[]{{<[{{}((<({<{}[{<()>{[<{((<[{<({[{{({{<{[([[(({}({{()[<{{[{}((({<<><{}[[(<[[{{({}<{<[[]{{[{{([({{<{{{[(([<>{{[[(([[(<[[[<{(<<[[({<<<>(({([{([<[({[<<<><[({<{[<{[{(<[[[[[{(<(<{<{(({}{{{}<<>(<(([[{[<[((){[({({({([[]<<{{[[<{[<{[[[{<><<{<(...

output:

100

result:

ok 1 number(s): "100"

Test #48:

score: 0
Accepted
time: 131ms
memory: 49224kb

input:

1
500000 500000
(((((((((())())((()((()()((((()((()(()((()((((((((((((((((((((((((((((((())(()(((((((((()((((((((((((((((((((((((())((((((((((((((((((((((((((((((((((((((((((((()((((((((((()((()((((((((((((()(((((())((((()((((((((((()(((()((((((()((()(()((((((((((((((((((((((((((((((()()((((()((((((...

output:

224975

result:

ok 1 number(s): "224975"

Test #49:

score: 0
Accepted
time: 176ms
memory: 49248kb

input:

1
500000 500000
((((((((((((()(((((((((((((((((((()()()((((()((((((((((((((((((()(((((((((((((((((((((((((((())(((((((()))(()()((((((((((((((()(((((((((((((((((((((((((()(((((()(((((((((()(()((((((((()(((((()((()((((((((((()((((((((((((((((((())((((()((((((((((((((((((((((((((((((()(((())(((((((((((...

output:

220198

result:

ok 1 number(s): "220198"

Test #50:

score: 0
Accepted
time: 206ms
memory: 49344kb

input:

1
500000 500000
((((((((()()(((((((((((((((((()(((((()((((((((((((((((((((((((((((((((((((()((((((((((((((((((((((((((()((((((((((((()())(((((((((((((((((()((((((((((((()(((((((((((((((((()(((()(((((((()((((((((()((((((((()(((((((((((((()((((((((((((((((((((((((((((((((()(((()((((((((()(((((((((((((...

output:

214328

result:

ok 1 number(s): "214328"

Test #51:

score: 0
Accepted
time: 282ms
memory: 49216kb

input:

1
500000 500000
(((((((((((((((((()(((((((((((((((((((((((((((((((()(((((((((((((((()((((((()(((((((((()(((((((((((((((((((((((()(((((((((((((((()((((()(((((((((((((((((((()((())(((((((()()((((((((()()(((((((((((()(()((()()((((((()()((((((((((((((()(((((((((((((()((((()()((((((((((((((((((((()((((((...

output:

198470

result:

ok 1 number(s): "198470"

Test #52:

score: 0
Accepted
time: 362ms
memory: 49264kb

input:

1
500000 500000
(((((((((((((((((((((((()((((((((((((((((((((((((((()(((((((()(((((((((((((((((((()((()((((((((((((()((((((())(()(((()((((((((((((((((((((((((((((()()((((()((((()((((((()((((())((((((((((()((((()((((()(((((((((((()(((((((((((()(((((((((())((((((((((((((((((((((((((((()(((((((()((((((...

output:

144248

result:

ok 1 number(s): "144248"

Test #53:

score: 0
Accepted
time: 188ms
memory: 48560kb

input:

1
500000 500000
()[](){}{{}[[]][]}[<>{{[[<>([{}]){<>}<[]><()>()]]}({}([](){}{{()}}))}][]<>{{<[]>}}<[[]]{}>[]{}<>([]){<>}{(())[]}()[<>]()<>()<<>>()({}){}{[][{<{(<>[[[(([()]{<{<>}><>}(<>))<{(<<>>{})}>{()}[])]{}]<<<{({}){{}}}[]>>{}{}>][]())()<()>}<>>}(){(<>){([](())<><((){}<{{}}>({(<>{<<[{}[][]]>[]<[]{...

output:

108

result:

ok 1 number(s): "108"

Test #54:

score: 0
Accepted
time: 191ms
memory: 48536kb

input:

1
500000 500000
<[(<>)]()({{}{(){[<[[]]>]}{{}{}()<>}<>}}(<[{<>{}{[]}{}{{{{[<[][]>]<>}({[]{{}}[<[[[]({})({}){}[{}]()]]<{}<{[][]<>}>>{[{}](){}}>]}({})[[{<>}[]()]](<<>[]>))}}}()}((([]([]))<{{}({})}[][]{}>[]{<>})<><>[])]>[]){}({}))>{[]}<>[][]{{}(())}<<><{{}[]{}}<><()<()>>>()>[<><{}>]<>[(){}]<>{}<{}>{{}}...

output:

40

result:

ok 1 number(s): "40"

Test #55:

score: 0
Accepted
time: 202ms
memory: 48340kb

input:

1
500000 500000
{()}<><<><{[]}<>>[](([[{<>}{}][[]]]{}{})[(<<>>)][])<[][]><[[]{}][[{}]]>>{{}}[<>][]{[]}(){{}}<>{}[(<>)]<{()}<{[[{{[]<>}[<>]}{<<>>}]{}{{[](<>{}{}[{}])}{}{}[[]][{{}[]}][([([]())<>])()<>]{}}[]]([]<{{}}{{}}>[]{})([])}>><{}<>(((){}[]))([])>()([]{()[<{}>]}<>)<()>(([]))(<<(()){}>({}{}<([<>])...

output:

53

result:

ok 1 number(s): "53"

Test #56:

score: 0
Accepted
time: 203ms
memory: 48312kb

input:

1
500000 500000
{}(<[][]><[]<>>[]){[(()[[{}]()[]]<>((())))](()((){()([{<>}][]{()}())[{}()]<{[]}><>[[<[][<>()[{}]]>[()]{}]{[()]}]}<><>(){(({()<>[<(([]{}[]){<[{[]{{<<{[{<><(){[]{<>}[[]]<{[]<<()>><>{[<{<>}[<{}<>><[]>]()>{}]<>{}[[]][]}}>}>}]{}{()}<{}<()()>(<>)<>()()>[]}<>{[<>]<<><[<>()<[][]{}()>]><{<[]>...

output:

28

result:

ok 1 number(s): "28"

Test #57:

score: 0
Accepted
time: 204ms
memory: 48520kb

input:

1
500000 500000
[]<{<[[]{[]<>([]){}}<<{()(<>)}>>]>}<[]>>{<>}(([]())<{}([]){}>((<>)[]){})<[()]({{[]}<{[{[<{}>]}]}{()}{{}}>}<>[[]({})()])>{}()[<>]<(<[]>{([])}()[])>[{([])()}]<[{}]{[](<[[<>{<()><<<>{}{}>>}]](){}>)<>}{}{()<()>[][{}][{[]<()[]{}>}()](){[[]]<<>[]({})()>(<>)}}[[<[<{}<>><<([[[({{}{{}}[(<>[[(...

output:

27

result:

ok 1 number(s): "27"

Test #58:

score: 0
Accepted
time: 190ms
memory: 48380kb

input:

1
500000 500000
{{}}()<>()[][[]]{(({}[[[[]][{(<>)[<>((((<<{{}(<>)[]({[()]}()<>)[]}><>[][]{}[[(<([])>())](({}{})<([])>[[]]{<<{(()()())<[](<>)[]>}>>}<><[(<>[])({({<{}{{(<{[]({})}[]>)}}()[]>(()<><[<(()()[()])>](()<><([]<>)<>{()}{{}}()>()){{{([(){[]}{}<()[{[]}{}]<>{}>{}]){}}}}[<><>]><{<>([{{<>{}}<<>>[]}...

output:

146

result:

ok 1 number(s): "146"

Test #59:

score: 0
Accepted
time: 185ms
memory: 48576kb

input:

1
500000 500000
[[]{{}([])[]}<>()][]{(){}[]<>}{<>{}}{<>([])[[][[[{{{}{<<>{}<[]<>()>>}<>}([]()[{()()(<>)<{}>}[]])}]<<<>>[{}()<([])()>{}]>][]]([[[]<>[()([]()<<<>[]>>())]([])]])](()[][])[]}<{}>()<[<>]{}<>><><({()}{<><({{[<><>]<{(<>())}>}<[<>{()}(){}][]{(<>)}()[([<<[{}][]{}>>])(<><><>{<>})]>}[[]{}])[[][...

output:

133

result:

ok 1 number(s): "133"

Test #60:

score: 0
Accepted
time: 195ms
memory: 48380kb

input:

1
500000 500000
<[][]><><>({}([()]{[[][(){<{}[]><[((<>)[({}{{}})])[<<<>{<><>}>((<<>>)(<>{()(<>)()(){{}}<>(<<<<()>>()>>)<>})){}{}<[{}]>>{}[]]]{[([](<{}{[][]()}<{{[([]{<()>[<>[]{}][]})<{()}>]}{[][[[][[](()[][])<<>{{}}[]([[<>]])[()]>][]]][]}[]()(<>)<>}>{<<{<<>><>([]){{}[{}]}(<<<<>>>([<>[{{(<>{}[]{}<>{}...

output:

38

result:

ok 1 number(s): "38"

Test #61:

score: 0
Accepted
time: 200ms
memory: 48400kb

input:

1
500000 500000
{}((<{([()]<>)({{<([{<[[<[]{({})}>{{}<>}()]<({}){<<><>[]>[{({[][][](<>)})<>[{{}{[](())}<{()(([][[{[[()]]([{{}(<>[][{<<>>}])[]}]()(<>))}][<({{}[]}[[[]]<>])()({})[[[]<>({[]{<{<>}(<>)>{{([(<{}<>>)<[<()[[<[]>]((<>))([[]](){{()<><>}{([{}(<{}>)])[{<[]>[]}]}}{}){}[]]>]><([[]])>[](())[()]]()...

output:

45

result:

ok 1 number(s): "45"

Test #62:

score: 0
Accepted
time: 197ms
memory: 48348kb

input:

1
500000 500000
[[(){[{[]}]}<>([](())(<<(<()[{}()]>[(<([[]()])>)<<<>{}{([])}>><<>()<>{}>][])>>){})[<><[]<>[(<><{}>[<>[]])[[()]]]({})>]]()]{}({}){}<[][()]>(<{()}>)(<>)<()><(<<<><><>>()>)>()<>()<{}>[]{}()[]({}){{<>{}[]}{[]}}[<>][]({}{})<>[[]<>()]<[<>{[]({{}<[[]()]{}>})({}<>(<>[()]{}(<>))())<(){(){{{}[...

output:

128

result:

ok 1 number(s): "128"

Test #63:

score: 0
Accepted
time: 161ms
memory: 48528kb

input:

1
500000 500000
<><><>{}(){}[[[]]][[[[{}]]{}<{[](([]{<>{}}))}>]<[({<><>[]}[])[(())]](){[]()<>[]{({{}})}}()[()<>{{}{([()])}}]>]({{[((<(<>)>[(<[]>)[]]){}{}()<<>()><([]<[[]{<{}>}]{}[]>([[]()]){}<[<{<({(()({}<{}>{[]([[]]{}([()({}[(){}{}[[]]<>[](<[[]][](([]<>{[[]]}())(<>)(<{}()>[]))[[{[()]{}}[<>()[][{[{}...

output:

32

result:

ok 1 number(s): "32"

Test #64:

score: 0
Accepted
time: 160ms
memory: 48524kb

input:

1
500000 500000
{{<<{}[]{([<>][]{}()(){})()}>()>}}(){(<>[])}(){}[{(()[]{})()(<>[]<<>>)<>}]{[<{{}[]}>{[[<<<[[(<>[]){}]][[[[[]{}<<<>{<><>[]}([({})]{{()}})>><>]]<<>>]]>{{<>(){}[()]<>[]}}>{<><<>><<>>}>]]<>[](<>[()][])}]}{}{()<>}{[][][]{{{}{}}[(([]))[()[[](((){}[{()}][[][([])(()())([{(()[([][]())<>])}{<<...

output:

15

result:

ok 1 number(s): "15"

Test #65:

score: 0
Accepted
time: 157ms
memory: 48584kb

input:

1
500000 500000
[{}]<>{<{<><<>>}>}{{<({})>}}{()}(((<>)))<>{}()[]()(<{()}>)(({{{{{}{}{{}(){}()}[]<{}>{<>}}}[{}]{<>()}}}(<<(({{}}))>>))){{([<>({{{}}}[]{}[])[[[{{}()<{[]<><()<>>[]}>}(<{<{{}(<>){{()}<>{}}()}>}[[][{{()}}[]]<>{}<>]>)][[<>]]]]{[](<>)<[[[[[<[]>]]]]]<[(()[])]>><>}])(<><[]{}>({}({}[({{}[{()()...

output:

9

result:

ok 1 number(s): "9"

Test #66:

score: 0
Accepted
time: 153ms
memory: 48572kb

input:

1
500000 500000
()[{[<>]<{<>}[[<[](){}>]<>([])]>{(<{}{<{[]}[]>}>)}}()]<<>><>{}()<<(([<><{[]}>{}{{}{}<>([][]({}){}<>())(<><<>>)<(()){()}>}]{}<>{}<>))[[]]{[](<{}((){[]})>())}>>[][]()<[](<({(()[{}<>][<<>>])({})})>{{<>}{}{}})><><>{{}[]<{}>{}()[{<>}]}[][]<[[][()]]{}>()<[<>[<>[<>]]]>[]()(){}[]<<>>{[[[]{}<...

output:

6

result:

ok 1 number(s): "6"

Test #67:

score: 0
Accepted
time: 165ms
memory: 48588kb

input:

1
500000 500000
<>([<><>][<<>()><<()>>])(())<[]><>(<>){}(())[]()<{[]}>[({})[(<<((<>[])<[]>)([[]])>()((<>{[]()()<()>})()()<<>><(()<>)><{<{<>{}}[]>}{}[]>())<>>{<>[(())(())]<>()}{<>})]][()[]{{{}()<>}}{<>}]{}{<>({}<[()]>)[]}[{}]{{<>}}{[[{{}}()]{()()[{<[]>}{{{}[<>]}}<{}><<>>()()[(<><>[])]]()[]}][({}<{}>)...

output:

4

result:

ok 1 number(s): "4"

Test #68:

score: 0
Accepted
time: 158ms
memory: 48488kb

input:

1
500000 500000
(<>()){}[]()<[[]]<<[]>>>[]{<>}({(){()[<{(<[([[]<>])]<>>[[[]{{{}}}]])}<[]>>]{[()<>]([{[(<<>>)]{}}{[]({})}{()}])}}})(<>)<>{[[]][]{}}<<<>{}>>(<>{})(<<(){}<><>>>)<>[]{}{}(()){{}[][[][()]<>]()}[{}(<>)][[][]]{}<()()[{()}][()](())<>>{<>}<()><><>([]{})<>[]<>[[(())<[]<({})>>][[]<()[]{}<>><{}>...

output:

7

result:

ok 1 number(s): "7"

Test #69:

score: 0
Accepted
time: 161ms
memory: 48288kb

input:

1
500000 500000
(<>){}(){}<<>([])>[]<<[]<<>>>>(){<([]())({<<>(){}<{}[()([{}]({}<>([][]){()})<{}{}[]>)]>[]>}{})>[[{}[<>[]][{}][]]]}{<>}{}<[]>{{}({})}{{<><>[[<>]](<[]>)()}}()<{()(){{}({})}}>()(()<>[])[]{}()<>{[]([[[{()(((([()]<([()]){([][]<({}[{}])><[<>{[()]}<<>>[<>]{}]>()){}{<>}}>))))}()<>]<>][()(){[...

output:

5

result:

ok 1 number(s): "5"

Test #70:

score: 0
Accepted
time: 147ms
memory: 48312kb

input:

1
500000 500000
[{<<>{()}{}>}](){}<[]>[{[<>]({<>}){}<>}]<({<>}{})>[<()>(<>{[<<[]([{}][[[]()()]])>>{}()]}[])()({}[{}]<><()><(<>[{}<>()]){}>{}(<<>>[[]<>{()}{}]{[]}))<<[<[()[]][[{<<<{(()(())<{[]<<{({(<{{[]{{}({})}<{{()[]()}}>[]()}}{}>)}<[({{}})][]{}{}>{})<{[{}(<([[]{}])><{}>)<>]}>[{()}]}>><>{<(){}>()[<...

output:

2

result:

ok 1 number(s): "2"

Test #71:

score: 0
Accepted
time: 156ms
memory: 48444kb

input:

1
500000 500000
()[<(<[[]]><>{<()[][]>[]}<(({}[])[[[]]][(<>{})])[[]]<>{[]}>)>][][][][(((<[]>)))][()]<>[[()]{{[<>][[[]](<{[]}{}{}><[]>){[(<{}(()<[{}]()<><<>><<>{[]<([])>}>{<[{}]><>}[(([[({}[][]{}{[<>]((({{}})))<>})[]]][<<()><>(())>]({}{})))<(<>())[{}]()[[]{{{<<(())({}()())<{{<<{{}[()]((((({})[](<()()...

output:

1

result:

ok 1 number(s): "1"

Test #72:

score: 0
Accepted
time: 147ms
memory: 48560kb

input:

1
500000 500000
<>{<{{<{}{}()<{([]{<>})}>[(<><>)]>(){}[][]}}<>>{}<>}<[{{<>}}{<[<><>[[]]]{[<{}[[<>{}][([])]<>]>][[]]}>}(()){}]><[]>[(<(<><>)>[[]])[]()]{}({}[[[]({[<>]}{{}<>})<<>>]])<>([](({<>({})}))([[]][]))[[{[<{}>]<()[[][][]]()<<><>>>[]<>}]()]<()()[]>[]<>[{({}{})<>}]<{}({})>{}<[]{}[<><>()[]][]>(())...

output:

3

result:

ok 1 number(s): "3"

Test #73:

score: 0
Accepted
time: 194ms
memory: 48312kb

input:

1
500000 500000
[][]{{[]}[{{()}(<{({<><>}[])[]{[<>]}}[[<{(<<{[]}{[]()}>{{[(<>)<[]>]{}[{}({{{}}}<(()[]<{}>){<<[]>[{({}){}}<()()>{}<>[]]>}([{()<[<>]>[]}]){}{}>())(<>)]}}{<<>>([]{{({}<{}>)[]}}<{}<>()[<()()>{}<[][{<[]{}{[]()()<<{[()<<<>{{[[(<()<{[<{}[]<{<{()}[]<<([[]][]()<>)>{<>{}}><>[()]{{}}>}>>[]<>]{[...

output:

42

result:

ok 1 number(s): "42"

Test #74:

score: 0
Accepted
time: 199ms
memory: 48292kb

input:

1
500000 500000
<(<({{}()}[]{})>()()<<[]><>(<>){{}}()()>())><<{{{}}}{}>><><[[[]][{{<>[]}{}[{[]}]<[][{[]<>({}[<(<>[])>{{{()}<[]>[]{}}([()[<(<()({}(([])[{<<[]{[]}>{{<>[(){([]{()})}][<>]}}>()}]{}))()>[[][]])>[][]{()}]{}[](){()}[[]](){}[[([])]<{}>]]<()>[]<>){}}])({<[[]<(){}<{}[][]>{}>[([<>]<<>{<><()<<{(...

output:

157

result:

ok 1 number(s): "157"

Test #75:

score: 0
Accepted
time: 195ms
memory: 48584kb

input:

1
500000 500000
()()<>{}<>{}<>(){(<>)<>()}<{()((<{}([<((){}{<>(<><><()(())()[]><>)}<>()[(){}{}]()){}({})><<[]>>][]<><{<(<({})[]>)>[(<>){<>{(())[([<(){}()>[]]{}<[((){[()]()}{{[]}})]()()>([{<[{()}]{[]}()><>{}}][]{({{<[]>[[]<>[{[]<>}{}][]]{{}[]}<[[]([])]><>}{[][<>][{{<()>}}<>](()())<>}[{}]}{([]())})({[...

output:

164

result:

ok 1 number(s): "164"

Test #76:

score: 0
Accepted
time: 188ms
memory: 48572kb

input:

1
500000 500000
([]<>){}<[]>{}[[([]{})({[]()}<>)<[][]{{[<><([]<><[]{}>[{{({})}}])[[()[]]]([{[([])<>{}]}(<<>([]<>)>[]((())[()<[<>[]]<(<>{})<>[()<>]>>](())[()]({({})[[][][]][[[]]<>[[<>{}<>[]<>]]][]()([{}()[]]){<>{{}{}({})<>}}[](){{()}}{[]}}(<>){}{{}}((){}<<>()>)<>))<>)]<>)>[[<>][]([])()([<<>[<>]>]){}[...

output:

46

result:

ok 1 number(s): "46"

Test #77:

score: 0
Accepted
time: 176ms
memory: 48364kb

input:

1
500000 500000
{<((<(<>{}[][[]]<>({(())}{}<><<>>){}<<<>>>){{([<>][])}}{{(())()([])}<<>><[[({})<>]]>}<<>[]{}[()]{}{<{[]}([])>}{<>}<{}<({[<<>({})(<<>>()<>)>]{}}{}{}[{{}()<{}>}()[]{(<>)[]}])>>([<>[][]]())()[[]](<>)((<>)())<>>{(<>)()}>{{({(<>)}){<{<>([(())]({[]})<>)}((<>))>{}}{[(){}[]{<>[][]}]()}<[[<>]...

output:

160

result:

ok 1 number(s): "160"

Test #78:

score: 0
Accepted
time: 148ms
memory: 48576kb

input:

1
500000 500000
<>{<{{}<()[]()[][]><>}>}{[]}(){[]}()([()({})])([]<{}{}>)<>()(){[]()<>()<>}<<>>{}({(<><(<>)>)<{}[]>})((){[]()}){}<{{[()]}<[(<>)]>}([{{}<<{(<{()<>}><<>[](<()<><[][(){}<>]<()><[]()[<([()])<>>()[]<<>>{}<>[]<<><()>><()<>[(<([])(()[])>)]>]>()<{}><{(){}([]<()>)[]}<[]()<>>[]([]{<{}>}[])>>>)(...

output:

3

result:

ok 1 number(s): "3"

Test #79:

score: 0
Accepted
time: 161ms
memory: 48484kb

input:

1
500000 500000
{()}<<<[<>[]<>]{([<{}>])}>>>{<>}[](<>{(<()>)[([{{}}<>]()[[][<>]]){}<>][{}{}()[{}[<>]][(){(<>{})}][]]}[<>{[[<>]{[]<[({[]})]<><{<()<{}>>}[]>>}]}][])<>()()()[]{()()}[](){[]()[{(){}}]<(()(){{}})>}(([([]<><(()()<[]>{<{{}}>}()<<()>>)>)]<<<>><<({()})(<{}<>>[]<<>><{{(<>)}}>){}>>>()<<>[{<>([<...

output:

6

result:

ok 1 number(s): "6"

Test #80:

score: 0
Accepted
time: 153ms
memory: 48316kb

input:

1
500000 500000
<>(())()[<>{{}}<>(())[(([])<<>>()[]){(<>)<[]([])>}]{()<{}>[]()<[<>]>}{}]()({}[](())<[<>](){[[<>]][[[]<><({{}(){<()>}[()(<[()<([[(([]([][]<>)){})([]<<>[][{}]{}>(<><>))][()[{(<{}>)<>}]]{<[]>}{{}[]}<><{(([])[[(<>())<>(<[[]<>{{()[[](<[][<([[<>()([({<{}>([{<()><>}<><>{}<<(<{}(({{{}<>}{}}<...

output:

5

result:

ok 1 number(s): "5"

Test #81:

score: 0
Accepted
time: 161ms
memory: 48288kb

input:

1
500000 500000
<{()}><[][[]]>[]{}([]){}{}(){()(){()<>()(([[]{{[]{[]{}()}}}{<[{}][<[[]{[]<[]>}]{{{}<[<>[]]()><{}[{}[[]](<>[({})<<>>{{}()<>}])[][()[]{([[]])}]{}][<[]>]>{}<({}[(<[][<<()><>{<>{([]){[]{({[]}[]<((())){}>[{}])<>[<>[<[]()({}<>)(<>()((){}))()[]>{}]]}}}}[][]>]>)])>}}>]<>>[<[]><>[<>]<{<>}[[<[...

output:

6

result:

ok 1 number(s): "6"

Test #82:

score: 0
Accepted
time: 153ms
memory: 48392kb

input:

1
500000 500000
{[]}[]<>[]{[{[]}[<>(){}[<[[]({(<(({<><>{}}(((([][(){()}])())())){}))>)}[])]>{}<>[<>{}]]]]}[]((){}){[<>(<{}(<([<>(({<[[[]{}]]>}))][][])>)[(<>{(<>{})<[<>]>}[[()<([]())>()]()])<<>[<[[][]]>[]]>]>()(((<><(()){}<<>>[]>)<>{{<><>}}{<()[]()>([((()[{{}[()]}<>]))()<[{}]<{{}}>{}([[]()()])>][]<<>...

output:

4

result:

ok 1 number(s): "4"

Test #83:

score: 0
Accepted
time: 202ms
memory: 48572kb

input:

1
500000 500000
<[()[]()[{}]{}]>()[{}{[[(){{}}]]<><>[]}]{<>{{}{<({<([])>}{(){{[]}}{<>(())}})>}}<()>{}}<>{<()>}<>{{()<>}{{()[][({<[<{{}<>{()<(<<>{{<{}>}}>{{{}}}<>)>{[]<>}{}}}>{}{<>[](<[]>())}]<>>[()()]})]}<{({})(<><>)}>}{(([]{}))}{}()}()()(<<>[]>{{}})([(([<[]<[]>{}<>[]><>]))[]])[]<>{}<>(<<<<<{}<>[]>>...

output:

120

result:

ok 1 number(s): "120"

Test #84:

score: 0
Accepted
time: 158ms
memory: 48364kb

input:

1
500000 500000
(){[]}<>[<<>()>][[()]{<<>[{[[][<<>>](<([[]{{}}((()<<({{}({}{{[]({}([])<(){}[{}]<{{{}}}>>)}})}<<>>)[()<{{}()[]}(<[<{[][][<[[<>]<>]>[<>]([<[]>[{}<>][(()[[]<(((([])[][[]()])))(<>)>])]])[]]}>]>{})>({}[()])()]<>{}>>{}<[]>()))(){}{<>()}])>[()]([]<<[]<()({()})>><>{}{}()(<>{{}})>[]{{}}{<<>>[...

output:

3

result:

ok 1 number(s): "3"

Extra Test:

score: 0
Extra Test Passed