QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#369856#6309. Aqreucup-team1191#AC ✓41ms11312kbC++2016.2kb2024-03-28 18:44:442024-03-28 18:44:44

Judging History

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

  • [2024-03-28 18:44:44]
  • 评测
  • 测评结果:AC
  • 用时:41ms
  • 内存:11312kb
  • [2024-03-28 18:44:44]
  • 提交

answer

/*
    author:  Maksim1744
    created: 28.03.2024 13:03:11
*/

#include "bits/stdc++.h"

using namespace std;

using ll = long long;
using ld = long double;

#define mp   make_pair
#define pb   push_back
#define eb   emplace_back

#define sum(a)     ( accumulate ((a).begin(), (a).end(), 0ll))
#define mine(a)    (*min_element((a).begin(), (a).end()))
#define maxe(a)    (*max_element((a).begin(), (a).end()))
#define mini(a)    ( min_element((a).begin(), (a).end()) - (a).begin())
#define maxi(a)    ( max_element((a).begin(), (a).end()) - (a).begin())
#define lowb(a, x) ( lower_bound((a).begin(), (a).end(), (x)) - (a).begin())
#define uppb(a, x) ( upper_bound((a).begin(), (a).end(), (x)) - (a).begin())

template<typename T>             vector<T>& operator--            (vector<T> &v){for (auto& i : v) --i;            return  v;}
template<typename T>             vector<T>& operator++            (vector<T> &v){for (auto& i : v) ++i;            return  v;}
template<typename T>             istream& operator>>(istream& is,  vector<T> &v){for (auto& i : v) is >> i;        return is;}
template<typename T>             ostream& operator<<(ostream& os,  vector<T>  v){for (auto& i : v) os << i << ' '; return os;}
template<typename T, typename U> pair<T,U>& operator--           (pair<T, U> &p){--p.first; --p.second;            return  p;}
template<typename T, typename U> pair<T,U>& operator++           (pair<T, U> &p){++p.first; ++p.second;            return  p;}
template<typename T, typename U> istream& operator>>(istream& is, pair<T, U> &p){is >> p.first >> p.second;        return is;}
template<typename T, typename U> ostream& operator<<(ostream& os, pair<T, U>  p){os << p.first << ' ' << p.second; return os;}
template<typename T, typename U> pair<T,U> operator-(pair<T,U> a, pair<T,U> b){return mp(a.first-b.first, a.second-b.second);}
template<typename T, typename U> pair<T,U> operator+(pair<T,U> a, pair<T,U> b){return mp(a.first+b.first, a.second+b.second);}
template<typename T, typename U> void umin(T& a, U b){if (a > b) a = b;}
template<typename T, typename U> void umax(T& a, U b){if (a < b) a = b;}

#ifdef HOME
#define SHOW_COLORS
#include "/mnt/c/Libs/tools/print.cpp"
#else
#define show(...) void(0)
#define debugf(fun)   fun
#define debugv(var)   var
#define mclock    void(0)
#define shows     void(0)
#define debug  if (false)
#define OSTREAM(...)    ;
#define OSTREAM0(...)   ;
#endif

template<class Fun>
class y_combinator_result {
    Fun fun_;
public:
    template<class T>
    explicit y_combinator_result(T &&fun): fun_(std::forward<T>(fun)) {}

    template<class ...Args>
    decltype(auto) operator()(Args &&...args) {
        return fun_(std::ref(*this), std::forward<Args>(args)...);
    }
};
template<class Fun>
decltype(auto) y_combinator(Fun &&fun) {
    return y_combinator_result<std::decay_t<Fun>>(std::forward<Fun>(fun));
}
// auto gcd = std::y_combinator([](auto gcd, int a, int b) -> int {
//     return b == 0 ? a : gcd(b, a % b);
// });

namespace grid_iterator_ns {
const array<pair<int, int>, 8> dirs = {{{0, 1}, {1, 0}, {0, -1}, {-1, 0}, {1, 1}, {-1, -1}, {1, -1}, {-1, 1}}};
struct GridIterator {
    int n, m;
    GridIterator(int n, int m) : n(n), m(m) {}

    template<size_t N>
    struct NeighbourIteratorContainer {
        int i, j, n, m;
        NeighbourIteratorContainer(int i, int j, int n, int m) : i(i), j(j), n(n), m(m) {}

        struct NeighbourIterator {
            int cur;
            int i, j, n, m;
            NeighbourIterator(int cur, int i, int j, int n, int m) : cur(cur), i(i), j(j), n(n), m(m) {
                skip_to_first_allowed();
            }

            void skip_to_first_allowed() {
                while (cur < N &&
                    (i + dirs[cur].first  < 0 || i + dirs[cur].first  >= n ||
                     j + dirs[cur].second < 0 || j + dirs[cur].second >= m)) {
                    ++cur;
                }
            }

            NeighbourIterator& operator ++ () {
                ++cur;
                skip_to_first_allowed();
                return *this;
            }

            pair<int, int> operator * () const { return {i + dirs[cur].first, j + dirs[cur].second}; }

            bool operator == (const NeighbourIterator& other) const { return cur == other.cur; }
        };

        auto begin() const { return NeighbourIterator(0, i, j, n, m); }
        auto end()   const { return NeighbourIterator(N, i, j, n, m); }

        auto collect() const {
            vector<pair<int, int>> result;
            for (auto it = begin(); it != end(); ++it) result.push_back(*it);
            return result;
        }
    };

    template<size_t N>
    auto iterate(int i, int j) const {
        static_assert(N == 4 || N == 8, "you can remove this, but make sure you understand what you are doing");
        return NeighbourIteratorContainer<N>(i, j, n, m);
    }
};
}
using grid_iterator_ns::GridIterator;

int main() {
    ios_base::sync_with_stdio(false); cin.tie(NULL);

    auto build = [&](int n, int m) {
        bool sw = false;
        if (n > m) {
            swap(n, m);
            sw = true;
        }
        GridIterator gi(n, m);
        vector<vector<int>> a(n, vector<int>(m));

        if ((n <= 3 && m <= 3) || (n == 3 && m == 4)) {
            for (int i = 0; i < n; ++i) {
                for (int j = 0; j < m && j < 3; ++j) {
                    a[i][j] = 1;
                }
            }
        } else if (n == 1) {
            for (int j = 0; j < m && j < 3; ++j) {
                a[0][j] = 1;
            }
        } else if (n == 2) {
            for (int j = 0; j < m; ++j) {
                a[0][j] = (j % 4 != 3);
                a[1][j] = (j % 4 != 1);
            }
        } else if (n == 3) {
            for (int j = 0; j < m; ++j) {
                a[0][j] = (j % 4 != 3);
                a[1][j] = (j % 4 != 1);
                a[2][j] = (j % 4 != 3);
            }
        } else {
            vector<int> bestp;
            int bestsh = -1;
            int bestans = -1;
            vector<int> p(4);
            iota(p.begin(), p.end(), 0);
            do {
                if (is_sorted(p.begin() + 1, p.end())) continue;
                if (is_sorted(p.rbegin(), p.rend() - 1)) continue;
                for (int sh0 = 0; sh0 < 4; ++sh0) {
                    auto shat = [&](int i) {
                        int sh = sh0 + p[(i % 4)];
                        sh %= 4;
                        return sh;
                    };
                    auto is0 = [&](int i, int j) {
                        return j % 4 == shat(i);
                    };
                    auto chck = [&](int i, int j) {
                        for (auto [x, y] : gi.iterate<4>(i, j)) {
                            if (!is0(x, y)) return true;
                        }
                        return false;
                    };
                    if (!chck(0, 0)) continue;
                    if (!chck(0, m - 1)) continue;
                    if (!chck(n - 1, 0)) continue;
                    if (!chck(n - 1, m - 1)) continue;
                    int cur = 0;
                    for (int i = 0; i < n; ++i) {
                        int sh = shat(i);
                        cur += m - (m - sh + 3) / 4;
                    }
                    if (cur > bestans) {
                        bestp = p;
                        bestans = cur;
                        bestsh = sh0;
                    }
                }
            } while (next_permutation(p.begin() + 1, p.end()));
            for (int i = 0; i < n; ++i) {
                int sh = bestsh + bestp[(i % 4)];
                sh %= 4;
                for (int j = 0; j < m; ++j) {
                    a[i][j] = (j % 4 != sh);
                }
            }
        }

        vector<vector<bool>> u(n, vector<bool>(m, false));

        auto conn = [&]() {
            int ones = 0;
            pair<int, int> one = {-1, -1};
            for (int i = 0; i < n; ++i) {
                for (int j = 0; j < m; ++j) {
                    if (a[i][j]) {
                        ++ones;
                        one = {i, j};
                    }
                    u[i][j] = false;
                }
            }

            if (one.first == -1) {
                return true;
            }
            u[one.first][one.second] = true;
            queue<pair<int, int>> q;
            q.push(one);
            --ones;
            while (!q.empty()) {
                auto [i, j] = q.front();
                q.pop();
                for (auto [x, y] : gi.iterate<4>(i, j)) {
                    if (a[x][y] && !u[x][y]) {
                        --ones;
                        u[x][y] = true;
                        q.emplace(x, y);
                    }
                }
            }
            assert(ones >= 0);
            return ones == 0;
        };
        if (!conn()) {
            show(a);
            assert(false);
        }

        if (sw) {
            vector<vector<int>> b(m, vector<int>(n));
            for (int i = 0; i < n; ++i) {
                for (int j = 0; j < m; ++j) {
                    b[j][i] = a[i][j];
                }
            }
            swap(a, b);
        }
        return a;
    };

    array<array<char, 20>, 20> mema;
    auto slow = [&](int n, int m) {
        if (n == 0 || m == 0) return 0;
        array<array<char, 20>, 20> a;
        array<array<char, 20>, 20> u;
        GridIterator gi(n, m);
        int ans = 0;
        auto conn = [&]() {
            int ones = 0;
            pair<int, int> one = {-1, -1};
            for (int i = 0; i < n; ++i) {
                for (int j = 0; j < m; ++j) {
                    if (a[i][j]) {
                        ++ones;
                        one = {i, j};
                    }
                    u[i][j] = false;
                }
            }

            if (one.first == -1) {
                return true;
            }
            u[one.first][one.second] = true;
            queue<pair<int, int>> q;
            q.push(one);
            --ones;
            while (!q.empty()) {
                auto [i, j] = q.front();
                q.pop();
                for (auto [x, y] : gi.iterate<4>(i, j)) {
                    if (a[x][y] && !u[x][y]) {
                        --ones;
                        u[x][y] = true;
                        q.emplace(x, y);
                    }
                }
            }
            assert(ones >= 0);
            return ones == 0;
        };
        y_combinator([&](auto calc, int i, int j, int cur) -> void {
            if (j == m) {
                j = 0;
                ++i;
            }
            if (i == n) {
                if (cur > ans && conn()) {
                    ans = cur;
                }
                return;
            }
            int upb = cur + (n - i - 1) * (m / 4 * 3 + m % 4) + ((m - j) / 4 * 3 + (m - j) % 4);
            if (upb <= ans) return;
            for (int b : {1, 0}) {
                if (b) {
                    if (i >= 3 && a[i - 1][j] && a[i - 2][j] && a[i - 3][j]) continue;
                    if (j >= 3 && a[i][j - 1] && a[i][j - 2] && a[i][j - 3]) continue;
                }
                a[i][j] = b;
                calc(i, j + 1, cur + b);
            }

        })(0, 0, 0);
        return ans;
    };

    auto shifts = [&](int n, int m) {
        if (min(n, m) == 0) return 0;
        if (min(n, m) == 1) return min(max(n, m), 3);
        array<array<char, 20>, 20> a;
        array<array<char, 20>, 20> u;
        GridIterator gi(n, m);
        int ans = 0;
        auto conn = [&]() {
            int ones = 0;
            pair<int, int> one = {-1, -1};
            for (int i = 0; i < n; ++i) {
                for (int j = 0; j < m; ++j) {
                    if (a[i][j]) {
                        ++ones;
                        one = {i, j};
                    }
                    u[i][j] = false;
                }
            }

            if (one.first == -1) {
                return true;
            }
            u[one.first][one.second] = true;
            queue<pair<int, int>> q;
            q.push(one);
            --ones;
            while (!q.empty()) {
                auto [i, j] = q.front();
                q.pop();
                for (auto [x, y] : gi.iterate<4>(i, j)) {
                    if (a[x][y] && !u[x][y]) {
                        --ones;
                        u[x][y] = true;
                        q.emplace(x, y);
                    }
                }
            }
            assert(ones >= 0);
            return ones == 0;
        };
        // if (n > m) swap(n, m);
        y_combinator([&](auto calc, int i, int cur) -> void {
            if (i == n) {
                if (cur > ans && conn()) {
                    ans = max(ans, cur);
                    mema = a;
                }
                return;
            }
            for (int shift = 0; shift < 4; ++shift) {
                bool ok = true;
                int here = 0;
                for (int j = 0; j < m; ++j) {
                    a[i][j] = (j % 4 != shift);
                    here += a[i][j];
                    if (a[i][j]) {
                        if (i >= 3 && a[i - 1][j] && a[i - 2][j] && a[i - 3][j]) ok = false;
                        if (j >= 3 && a[i][j - 1] && a[i][j - 2] && a[i][j - 3]) ok = false;
                        if (!ok) break;
                    }
                }
                if (!ok) continue;
                calc(i + 1, cur + here);
            }
        })(0, 0);
        return ans;
    };

    int t;
    cin >> t;
    while (t--) {
        int n, m;
        cin >> n >> m;
        auto v = build(n, m);
        int c = 0;
        for (auto& x : v)
            c += sum(x);
        cout << c << '\n';
        for (int i = 0; i < n; ++i) {
            for (int j = 0; j < m; ++j) {
                cout << v[i][j];
            }
            cout << '\n';
        }
    }
    // for (int n = 1; n <= 30; ++n) {
    //     for (int m = 1; m <= 30; ++m) {
    //         build(n, m);
    //     }
    // }
    // const int N = 10;
    // vector<vector<int>> v1;
    // vector<vector<int>> v2;
    // {

    //     vector<vector<int>> v(N + 1, vector<int>(N + 1));
    //     for (int i = 0; i <= N; ++i) {
    //         for (int j = i; j <= N; ++j) {
    //             if (i * j < 50)
    //                 v[i][j] = v[j][i] = shifts(i, j);
    //         }
    //         cout << v[i] << endl;
    //     }
    //     cout << endl;
    //     v1 = v;
    // }
    // {
    //     vector<vector<int>> v(N + 1, vector<int>(N + 1));
    //     for (int i = 0; i <= N; ++i) {
    //         for (int j = i; j <= N; ++j) {
    //             if (i * j < 50)
    //                 v[i][j] = v[j][i] = slow(i, j);
    //         }
    //         cout << v[i] << endl;
    //         assert(v[i] == v1[i]);
    //     }
    //     v2 = v;

    //     for (int i = 0; i < N; ++i) {
    //         for (int j = 0; j < N; ++j) {
    //             if (i * j >= 50) continue;
    //             cerr << i << ' ' << j << endl;
    //             cerr << v[i][j] << endl;
    //             auto b = build(i, j);
    //             int h = 0;
    //             for (auto& v : b) {
    //                 for (auto x : v) {
    //                     cerr << x;
    //                     h += x;
    //                 }
    //                 cerr << endl;
    //             }
    //             cerr << endl;
    //             if (h != v[i][j]) {
    //                 cerr << h << ' ' << v[i][j] << endl;
    //                 shifts(i, j);
    //                 for (int x = 0; x < i; ++x) {
    //                     for (int y = 0; y < j; ++y) {
    //                         cerr << (int)mema[x][y];
    //                     }
    //                     cerr << endl;
    //                 }
    //             }
    //             assert(h == v[i][j]);
    //         }
    //     }
    // }

    // assert(v1 == v2);
    // for (auto& x : v)
    //     cout << x << endl;

    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

3
2 2
3 4
3 8

output:

4
11
11
9
1110
1110
1110
18
11101110
10111011
11101110

result:

ok ok (3 test cases)

Test #2:

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

input:

361
2 2
2 3
2 4
2 5
2 6
2 7
2 8
2 9
2 10
2 11
2 12
2 13
2 14
2 15
2 16
2 17
2 18
2 19
2 20
3 2
3 3
3 4
3 5
3 6
3 7
3 8
3 9
3 10
3 11
3 12
3 13
3 14
3 15
3 16
3 17
3 18
3 19
3 20
4 2
4 3
4 4
4 5
4 6
4 7
4 8
4 9
4 10
4 11
4 12
4 13
4 14
4 15
4 16
4 17
4 18
4 19
4 20
5 2
5 3
5 4
5 5
5 6
5 7
5 8
5 9
5 1...

output:

4
11
11
6
111
111
6
1110
1011
8
11101
10111
9
111011
101110
11
1110111
1011101
12
11101110
10111011
14
111011101
101110111
15
1110111011
1011101110
17
11101110111
10111011101
18
111011101110
101110111011
20
1110111011101
1011101110111
21
11101110111011
10111011101110
23
111011101110111
1011101110111...

result:

ok ok (361 test cases)

Test #3:

score: 0
Accepted
time: 37ms
memory: 3636kb

input:

100
91 91
91 92
91 93
91 94
91 95
91 96
91 97
91 98
91 99
91 100
92 91
92 92
92 93
92 94
92 95
92 96
92 97
92 98
92 99
92 100
93 91
93 92
93 93
93 94
93 95
93 96
93 97
93 98
93 99
93 100
94 91
94 92
94 93
94 94
94 95
94 96
94 97
94 98
94 99
94 100
95 91
95 92
95 93
95 94
95 95
95 96
95 97
95 98
95 9...

output:

6211
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011
1011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111
1101110111011101110...

result:

ok ok (100 test cases)

Test #4:

score: 0
Accepted
time: 33ms
memory: 4000kb

input:

16
247 247
247 248
247 249
247 250
248 247
248 248
248 249
248 250
249 247
249 248
249 249
249 250
250 247
250 248
250 249
250 250

output:

45757
0111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011
1011101110111011101110111011101110111011101110...

result:

ok ok (16 test cases)

Test #5:

score: 0
Accepted
time: 38ms
memory: 7612kb

input:

1
997 997

output:

745507
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #6:

score: 0
Accepted
time: 34ms
memory: 7692kb

input:

1
997 998

output:

746255
11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #7:

score: 0
Accepted
time: 35ms
memory: 7980kb

input:

1
997 999

output:

747003
11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #8:

score: 0
Accepted
time: 39ms
memory: 7688kb

input:

1
997 1000

output:

747750
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #9:

score: 0
Accepted
time: 34ms
memory: 11220kb

input:

1
998 997

output:

746255
11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #10:

score: 0
Accepted
time: 34ms
memory: 7892kb

input:

1
998 998

output:

747004
11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #11:

score: 0
Accepted
time: 38ms
memory: 7732kb

input:

1
998 999

output:

747752
11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #12:

score: 0
Accepted
time: 35ms
memory: 7684kb

input:

1
998 1000

output:

748500
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #13:

score: 0
Accepted
time: 38ms
memory: 11312kb

input:

1
999 997

output:

747003
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #14:

score: 0
Accepted
time: 41ms
memory: 11236kb

input:

1
999 998

output:

747752
11101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101...

result:

ok ok (1 test case)

Test #15:

score: 0
Accepted
time: 38ms
memory: 7912kb

input:

1
999 999

output:

748501
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #16:

score: 0
Accepted
time: 38ms
memory: 7724kb

input:

1
999 1000

output:

749250
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #17:

score: 0
Accepted
time: 37ms
memory: 11308kb

input:

1
1000 997

output:

747750
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #18:

score: 0
Accepted
time: 37ms
memory: 11268kb

input:

1
1000 998

output:

748500
11011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011...

result:

ok ok (1 test case)

Test #19:

score: 0
Accepted
time: 38ms
memory: 11284kb

input:

1
1000 999

output:

749250
01110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110...

result:

ok ok (1 test case)

Test #20:

score: 0
Accepted
time: 38ms
memory: 7912kb

input:

1
1000 1000

output:

750000
10111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #21:

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

input:

1
3 997

output:

2244
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #22:

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

input:

1
3 998

output:

2246
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #23:

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

input:

1
3 999

output:

2249
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #24:

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

input:

1
3 1000

output:

2250
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #25:

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

input:

1
997 3

output:

2244
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101...

result:

ok ok (1 test case)

Test #26:

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

input:

1
998 3

output:

2246
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101...

result:

ok ok (1 test case)

Test #27:

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

input:

1
999 3

output:

2249
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101...

result:

ok ok (1 test case)

Test #28:

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

input:

1
1000 3

output:

2250
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101
111
010
111
101...

result:

ok ok (1 test case)

Test #29:

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

input:

1
2 997

output:

1496
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #30:

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

input:

1
2 998

output:

1497
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #31:

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

input:

1
2 999

output:

1499
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #32:

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

input:

1
2 1000

output:

1500
1110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111011101110111...

result:

ok ok (1 test case)

Test #33:

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

input:

1
997 2

output:

1496
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
1...

result:

ok ok (1 test case)

Test #34:

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

input:

1
998 2

output:

1497
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
1...

result:

ok ok (1 test case)

Test #35:

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

input:

1
999 2

output:

1499
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
1...

result:

ok ok (1 test case)

Test #36:

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

input:

1
1000 2

output:

1500
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
11
01
11
10
1...

result:

ok ok (1 test case)