QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#798483#9783. Duloc Networkucup-team5071#WA 17ms4312kbC++208.0kb2024-12-04 14:04:392024-12-04 14:04:44

Judging History

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

  • [2024-12-04 14:04:44]
  • 评测
  • 测评结果:WA
  • 用时:17ms
  • 内存:4312kb
  • [2024-12-04 14:04:39]
  • 提交

answer

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

const bool TEST = false;

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());

struct interactor
{
    int n;
    int query_count;
    vector<vector<int>> G;
    int ans;
    void init()
    {
        query_count = 0;
        if (TEST)
        {
            n = 200;
            G = vector<vector<int>>(n, vector<int>(n));
            for (int i = 0; i < n; ++i)
            {
                for (int j = i + 1; j < n; ++j)
                {
                    G[i][j] = G[j][i] = 1;
                    break;

                    // int tmp = rng() % 40;
                    // int x = (tmp == 0);
                    // G[i][j] = G[j][i] = x;
                }
            }
            G[0][n - 1] = G[n - 1][0] = 1;
            // const int N = rng() % 100 + 1;
            // for (int i = N - 1; i + 1 < n; i += N)
            // {
            //     G[i][i + 1] = 0;
            //     G[i + 1][i] = 0;
            // }
            int viscnt = 0;
            vector<int> vis(n);
            auto dfs = [&](auto &self, int now) -> void
            {
                vis[now] = 1;
                viscnt++;
                for (int i = 0; i < n; ++i)
                {
                    if (!vis[i] && G[now][i] == 1)
                    {
                        self(self, i);
                    }
                }
            };
            dfs(dfs, 0);
            if (viscnt == n)
            {
                ans = 1;
            }
            else
            {
                ans = 0;
            }
        }
    }
    int readn()
    {
        if (TEST)
        {
            return n;
        }
        else
        {
            cin >> n;
            return n;
        }
    }
    int query(const string &s)
    {
        query_count++;
        if (TEST == true)
        {
            assert((int)s.size() == n);
            int cnt = 0;
            vector<int> ok(n);
            for (int i = 0; i < n; ++i) // i是否能选
            {
                if (s[i] == '1')
                {
                    continue;
                }
                for (int j = 0; j < n; ++j)
                {
                    if (i == j)
                        continue;
                    if (s[j] == '0')
                        continue;
                    if (G[i][j] == 1)
                    {
                        // cout << i << " " << j << endl;
                        ok[i] = 1;
                        cnt++;
                        break;
                    }
                }
            }
            // cout << "Q: " << s << " " << cnt << endl;
            return cnt;
        }
        else
        {
            cout << "? " << s << endl;
            int res;
            cin >> res;
            return res;
        }
    }
    void answer(int x)
    {
        if (TEST)
        {
            cout << query_count << endl;
            if (x != ans)
            {
                cout << "WA" << endl;
                cout << "ANS : " << ans << " OUT: " << x << endl;
                for (int i = 0; i < n; ++i)
                {
                    for (int j = 0; j < n; ++j)
                    {
                        cout << G[i][j] << " ";
                    }
                    cout << endl;
                }
                exit(1);
            }
            else
            {
                // cout << "AC" << endl;
            }
        }
        else
        {
            cout << "! " << x << endl;
        }
    }
    void outputG()
    {
        cout << n << endl;
        for (int i = 0; i < n; ++i)
        {
            for (int j = 0; j < n; ++j)
            {
                cout << G[i][j] << " ";
            }
            cout << endl;
        }
    }
} inter;
struct SSS
{
    set<int> st;
    int whitecnt;
    int id;
};

void solve()
{

    inter.init();
    // inter.outputG();
    int n = inter.readn();
    vector<int> fa(n);
    iota(fa.begin(), fa.end(), 0);
    vector<SSS> a(n);

    auto get_fa = [&](auto &self, int x) -> int
    {
        if (fa[x] != x)
        {
            return fa[x] = self(self, fa[x]);
        }
        else
        {
            return x;
        }
    };

    auto mergeset = [](const set<int> &s1, const set<int> &s2) -> set<int>
    {
        set<int> res;
        for (auto x : s1)
        {
            res.insert(x);
        }
        for (auto x : s2)
        {
            res.insert(x);
        }
        return res;
    };

    auto set2s = [&](const set<int> &s) -> string
    {
        string res;
        res.assign(n, '0');
        for (auto x : s)
        {
            res[x] = '1';
        }
        return res;
    };
    vector<int> SSS;
    int tot = 0;
    for (int i = 0; i < n; ++i)
    {
        set<int> setx{i};
        int res = inter.query(set2s(setx));
        if (res == 0)
        {
            inter.answer(0);
            return;
        }
        a[i].st = setx;
        a[i].whitecnt = res;
        a[i].id = ++tot;
    }
    set<pair<int, int>> vised;

    int not_flag = 0;
    vector<int> minn(n);
    while (inter.query_count <= 3498)
    {
        int x = 0, y;
        // x = rng() % n;
        auto gmin = [&]()
        {
            int x = 0;
            int minwhitecnt = 1000;
            for (int i = 0; i < n; ++i)
            {
                int fx = get_fa(get_fa, i);
                if (a[fx].whitecnt < minwhitecnt)
                {
                    x = i;
                    minwhitecnt = a[fx].whitecnt;
                }
            }
            return x;
        };
        auto gmax = [&]()
        {
            int x = 0;
            int minwhitecnt = 0;
            for (int i = 0; i < n; ++i)
            {
                int fx = get_fa(get_fa, i);
                if (a[fx].whitecnt > minwhitecnt)
                {
                    x = i;
                    minwhitecnt = a[fx].whitecnt;
                }
            }
            return x;
        };
        if (not_flag < 20)
        {
            // x = rng() % n;
            x = (rng() % 3) ? gmin() : gmax();
            if (minn[x] == n)
            {
                x = rng() % n;
            }
        }
        else
        {
            x = rng() % n;
        }
        y = rng() % n;

        while (x == y)
        {
            // x = rng() % n;
            y = rng() % n;
        }
        int fx = get_fa(get_fa, x);
        int fy = get_fa(get_fa, y);
        if (fx == fy)
            continue;
        int xid = a[fx].id;
        int yid = a[fy].id;

        auto p = make_pair(xid, yid);
        if (p.first > p.second)
        {
            swap(p.first, p.second);
        }
        if (vised.count(p))
            continue;
        // cout << x << " " << y << " " << fx << " " << fy << endl;
        set<int> newst = mergeset(a[fx].st, a[fy].st);
        int qres = inter.query(set2s(newst));
        if (qres == 0)
        {
            if ((int)newst.size() == n)
            {
                inter.answer(1);
                return;
            }
            else
            {
                inter.answer(0);
                return;
            }
        }
        if (qres == a[fx].whitecnt + a[fy].whitecnt)
        {
            vised.insert(p);
            not_flag++;
            continue;
        }
        not_flag = 0;
        fa[fx] = fy;
        a[fy].whitecnt = qres;
        for (auto x : a[fx].st)
        {
            a[fy].st.insert(x);
        }
        // cout << "merge fx=" << a[fx].id << " fy=" << a[fy].id << " newid=" << tot + 1 << endl;
        a[fy].id = ++tot;
    }
    // assert(1 == 2);
    inter.answer(rng() % 2);
}
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    int T;
    if (TEST)
        T = 1000;
    else
        T = 1;
    while (T--)
        solve();
    return 0;
}

详细

Test #1:

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

input:

4
1
3
2
2
2
1
0

output:

? 1000
? 0100
? 0010
? 0001
? 1010
? 1110
? 1111
! 1

result:

ok Correct answer with 7 queries.

Test #2:

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

input:

2
0

output:

? 10
! 0

result:

ok Correct answer with 1 queries.

Test #3:

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

input:

4
1
3
2
2
2
1
0

output:

? 1000
? 0100
? 0010
? 0001
? 1100
? 1101
? 1111
! 1

result:

ok Correct answer with 7 queries.

Test #4:

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

input:

2
0

output:

? 10
! 0

result:

ok Correct answer with 1 queries.

Test #5:

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

input:

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

output:

? 10000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000
? 00010000000000000000000000000000000000000000000000
? 00001000000000000000000000000000000000000000000000
? 000001000000000000000000000000000...

result:

ok Correct answer with 155 queries.

Test #6:

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

input:

50
10
13
8
6
13
8
10
8
8
8
9
13
15
11
9
10
14
6
16
10
15
10
7
8
10
10
10
13
10
15
9
10
11
5
16
10
14
11
10
9
9
15
11
10
7
11
12
10
9
10
14
15
23
14
16
30
16
14
30
32
15
20
34
34
19
19
18
35
20
18
19
26
19
23
19
35
23
35
26
20
34
33
32
23
31
31
28
25
23
22
21
29
30
17
13
11
7
4
2
0

output:

? 10000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000
? 00010000000000000000000000000000000000000000000000
? 00001000000000000000000000000000000000000000000000
? 000001000000000000000000000000000...

result:

ok Correct answer with 100 queries.

Test #7:

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

input:

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

output:

? 10000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000
? 00010000000000000000000000000000000000000000000000
? 00001000000000000000000000000000000000000000000000
? 000001000000000000000000000000000...

result:

ok Correct answer with 255 queries.

Test #8:

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

input:

50
2
14
8
8
7
12
12
8
8
9
9
10
8
8
4
8
9
9
9
11
13
11
8
7
9
12
7
5
6
4
7
8
10
5
5
10
8
4
10
9
11
7
10
8
6
8
10
7
5
9
20
15
12
9
7
14
20
10
13
15
12
17
10
15
17
15
26
32
35
13
17
17
34
15
15
18
35
15
34
22
20
34
21
22
18
19
24
18
26
16
19
28
31
30
27
26
26
21
16
15
14
11
26
30
5
2
0

output:

? 10000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000
? 00010000000000000000000000000000000000000000000000
? 00001000000000000000000000000000000000000000000000
? 000001000000000000000000000000000...

result:

ok Correct answer with 107 queries.

Test #9:

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

input:

50
3
1
1
1
2
1
1
1
1
5
1
2
1
1
1
1
3
1
1
2
1
1
1
2
2
1
1
1
1
3
1
2
1
1
2
3
1
2
3
2
1
3
1
2
3
1
2
2
1
1
3
3
2
6
3
6
6
6
3
4
4
2
2
4
5
2
4
4
6
2
4
2
2
3
4
3
2
3
4
6
6
4
2
5
2
2
5
2
4
6
3
5
6
9
7
7
3
7
1
3
4
7
7
4
2
7
2
6
2
7
4
7
2
7
3
7
1
3
2
7
4
2
3
2
2
2
3
2
3
6
2
2
3
7
2
2
2
7
7
6
7
6
2
2
9
7
7
8
2...

output:

? 10000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000
? 00010000000000000000000000000000000000000000000000
? 00001000000000000000000000000000000000000000000000
? 000001000000000000000000000000000...

result:

ok Correct answer with 153 queries.

Test #10:

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

input:

100
1
2
1
1
1
1
1
1
3
3
1
1
2
3
4
1
2
2
2
1
2
2
1
2
2
1
1
1
3
2
1
2
2
1
4
1
1
1
3
2
4
1
3
2
3
3
3
1
1
1
1
2
1
2
2
4
3
1
2
1
1
1
1
3
3
3
2
1
1
2
1
2
2
3
2
1
5
3
5
1
1
1
1
1
1
1
1
3
4
1
2
1
2
1
1
2
1
3
2
1
3
3
4
4
3
6
2
4
3
2
8
4
2
2
4
5
4
3
3
2
4
2
3
5
3
3
5
3
2
5
2
4
2
4
4
6
4
6
5
2
3
4
4
6
4
3
2
3
...

output:

? 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 327 queries.

Test #11:

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

input:

100
11
13
9
11
8
7
15
12
8
8
7
6
9
12
11
9
10
9
11
16
10
8
9
8
10
6
8
9
13
10
9
7
5
11
14
6
11
16
7
7
8
8
11
8
13
15
11
12
11
11
11
9
10
12
10
6
11
10
5
13
9
9
6
6
6
12
7
12
10
10
9
11
7
11
5
6
9
6
5
9
5
16
11
13
13
10
5
5
8
8
12
11
5
8
8
10
8
10
8
10
14
13
23
13
33
12
15
12
11
37
13
15
47
12
17
12
...

output:

? 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 215 queries.

Test #12:

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

input:

100
5
3
3
4
2
2
2
8
4
5
4
4
2
2
3
4
6
5
1
4
3
3
2
5
5
2
2
4
3
4
4
4
4
1
3
5
3
4
4
3
3
4
1
3
3
2
5
5
5
1
3
4
3
4
2
2
4
2
1
3
3
7
3
5
5
6
6
1
3
2
3
3
3
2
1
6
3
5
5
3
4
4
2
2
1
5
7
3
3
1
6
2
2
5
2
5
3
3
6
4
6
10
12
3
4
15
4
3
6
14
6
13
5
4
14
6
4
5
5
4
3
5
5
6
8
5
8
8
4
5
6
16
18
5
2
4
20
17
2
6
22
19
...

output:

? 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 336 queries.

Test #13:

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

input:

100
1
1
1
3
1
1
3
1
4
1
2
3
4
1
1
2
4
1
3
2
1
3
2
4
1
3
1
1
2
1
1
1
3
1
1
4
1
1
1
1
4
1
2
1
3
3
1
1
3
4
1
2
2
3
3
1
1
1
1
4
1
1
1
1
1
2
2
2
2
1
2
2
2
2
2
1
1
2
5
1
2
2
1
1
2
2
2
4
1
1
1
5
4
1
3
1
1
1
2
1
3
2
8
6
7
5
8
7
3
2
3
8
6
2
2
7
7
2
6
5
4
0

output:

? 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 122 queries.

Test #14:

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

input:

100
1
1
2
3
1
3
2
1
1
1
1
1
1
4
1
1
1
2
1
1
2
3
1
1
1
2
1
2
2
2
1
2
1
1
1
4
3
1
1
1
1
2
2
3
2
1
1
1
1
1
1
1
1
5
3
1
1
2
1
1
2
1
2
2
1
2
3
1
1
1
1
1
3
1
1
1
1
1
3
1
1
1
2
2
1
3
3
2
1
4
3
1
2
3
1
1
2
1
2
1
3
3
4
2
2
2
2
3
2
2
3
3
2
4
2
4
2
2
2
3
3
5
2
2
2
4
4
3
3
3
4
3
2
2
4
5
6
2
3
2
2
3
5
3
5
4
2
2
...

output:

? 1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 00100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 216 queries.

Test #15:

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

input:

150
4
2
3
2
2
3
2
4
3
3
4
2
2
4
6
1
3
2
3
5
3
4
4
3
6
3
1
2
4
5
5
3
2
3
3
2
3
1
2
4
2
4
4
1
2
3
2
3
1
1
4
4
3
2
2
1
3
3
1
2
1
6
1
3
2
4
1
4
2
1
4
3
4
1
3
4
2
4
2
5
3
4
2
6
6
2
2
2
3
2
4
4
4
2
2
1
2
1
3
2
3
7
2
1
3
2
5
4
1
2
3
2
3
2
3
5
3
4
5
2
3
1
3
1
2
3
1
3
1
2
3
3
2
3
7
1
2
1
4
2
2
2
3
4
4
3
6
3
...

output:

? 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 557 queries.

Test #16:

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

input:

150
4
2
2
1
2
1
1
8
1
2
1
3
4
2
1
4
3
2
1
4
3
1
1
4
5
3
2
3
3
2
4
1
3
4
4
5
4
2
6
4
2
2
2
2
3
6
2
3
3
4
3
3
2
3
2
4
2
1
1
1
1
2
2
4
2
3
3
3
7
1
4
3
3
3
4
2
2
1
2
2
2
1
2
4
2
1
2
2
4
2
2
4
2
6
2
4
4
2
1
2
4
2
5
1
4
3
3
1
2
4
4
2
2
3
4
1
4
2
2
3
3
3
2
3
2
6
3
3
2
3
1
1
3
5
2
3
2
2
2
3
1
3
3
4
3
3
2
3
...

output:

? 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 549 queries.

Test #17:

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

input:

150
3
1
4
1
4
2
3
1
1
3
1
1
4
5
7
1
2
1
2
3
4
2
3
5
1
5
1
2
2
5
3
6
2
2
1
3
5
1
3
2
2
3
1
2
1
3
2
2
1
3
2
2
2
5
1
2
2
5
5
2
3
4
1
3
1
2
1
2
2
1
1
5
3
1
3
1
2
3
1
2
2
2
1
4
1
2
2
5
3
2
1
4
2
2
5
1
3
3
1
4
3
2
4
1
5
3
4
2
2
3
1
2
4
3
3
2
1
2
3
1
1
2
1
3
4
3
1
2
4
4
3
1
7
4
1
1
1
1
4
3
2
3
2
2
1
3
3
1
...

output:

? 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 553 queries.

Test #18:

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

input:

150
4
4
5
4
2
2
5
3
1
4
2
2
3
1
1
2
2
3
3
3
8
2
1
3
2
2
3
1
1
3
2
3
2
3
3
7
1
2
1
5
4
1
4
4
3
2
3
2
5
7
3
2
1
2
1
3
5
3
3
6
3
3
5
3
5
5
1
4
2
5
2
3
2
2
1
3
2
2
2
2
1
3
2
1
2
5
4
3
6
3
2
3
1
2
3
3
1
4
2
2
2
3
4
3
1
5
2
1
5
2
4
6
3
3
2
3
3
2
3
1
5
1
3
2
3
8
2
5
1
4
5
4
1
1
3
1
1
1
5
3
1
3
4
2
3
2
2
4
...

output:

? 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 532 queries.

Test #19:

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

input:

150
2
1
1
3
2
2
2
1
1
1
1
1
2
2
2
1
1
3
3
2
2
1
2
1
2
5
4
2
1
2
2
2
2
1
2
1
2
1
2
3
3
2
3
2
1
1
2
2
3
1
2
1
1
3
3
2
4
2
1
1
2
5
2
2
2
2
1
1
3
2
1
3
1
5
3
1
3
1
4
1
2
1
3
1
1
1
3
1
1
2
1
5
3
1
1
1
2
1
2
1
2
1
1
2
2
3
1
2
1
2
2
2
2
2
3
1
5
2
1
2
3
2
1
2
4
1
1
2
3
3
3
1
2
1
3
2
2
1
1
2
2
3
1
1
1
1
4
1
...

output:

? 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 0100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 1013 queries.

Test #20:

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

input:

200
1
3
1
3
3
1
1
1
1
1
2
1
3
2
2
1
1
3
1
2
1
1
1
1
2
2
1
1
1
2
1
4
1
1
1
1
2
1
1
2
3
1
1
1
4
1
1
1
1
3
1
1
1
1
2
1
1
1
1
2
1
2
1
2
1
1
1
1
1
4
1
1
1
1
1
1
1
1
1
2
1
1
2
1
2
2
2
4
1
2
1
1
5
2
1
1
2
1
1
1
1
1
1
1
1
2
1
1
1
1
1
3
1
2
1
1
3
1
1
1
2
1
5
1
1
1
1
4
1
4
1
1
3
1
3
1
3
1
1
4
1
2
1
3
1
2
2
2
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 335 queries.

Test #21:

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

input:

200
3
2
2
2
2
2
1
1
1
4
2
1
2
2
2
2
1
1
2
1
1
3
1
1
2
2
2
3
1
2
1
1
2
1
2
2
2
3
3
3
2
2
1
1
4
1
1
2
2
2
2
1
2
2
1
3
2
3
2
1
1
1
1
1
2
2
1
1
2
1
1
4
2
1
1
1
1
2
3
2
1
2
3
4
1
1
2
5
5
2
1
3
2
3
1
3
1
2
1
2
1
1
3
2
2
3
3
4
1
1
2
1
3
2
1
1
1
1
1
4
2
1
1
1
1
2
2
2
3
2
2
2
1
1
1
2
3
3
2
2
2
3
1
4
1
3
2
1
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 2325 queries.

Test #22:

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

input:

200
1
2
1
1
1
3
1
1
2
1
2
3
2
3
1
3
2
1
3
1
2
3
1
1
1
2
2
1
4
2
1
1
5
2
3
1
3
3
2
2
2
2
1
2
3
3
2
2
1
1
4
2
2
2
5
2
2
3
3
3
2
1
2
2
2
1
1
2
2
1
1
1
3
2
3
2
1
3
3
3
2
2
1
2
2
5
1
3
3
1
1
1
1
1
3
1
1
1
1
4
3
1
3
1
3
2
1
3
3
1
1
4
1
2
2
2
1
2
3
2
4
3
1
1
3
3
1
1
2
1
1
2
2
1
1
1
3
1
2
1
1
1
2
3
2
1
1
1
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 229 queries.

Test #23:

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

input:

200
1
1
1
1
1
2
3
2
1
1
4
1
2
2
3
2
3
1
2
1
2
2
3
2
1
3
3
3
2
4
2
4
4
1
2
2
2
3
3
1
2
1
2
1
2
4
1
1
2
2
1
2
2
2
2
2
2
1
3
1
2
2
2
2
1
2
1
4
1
4
1
2
1
1
2
1
1
3
2
3
1
2
3
2
1
2
3
1
1
1
3
2
2
1
1
2
3
3
3
4
1
3
1
2
1
3
4
1
1
3
1
2
2
1
4
1
3
2
2
2
1
1
1
2
3
2
2
1
3
1
1
3
2
1
2
3
1
3
4
2
3
2
1
1
4
2
1
2
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 2564 queries.

Test #24:

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

input:

200
1
3
2
2
3
3
2
2
2
2
3
2
1
1
4
4
3
4
4
3
3
2
4
6
2
6
3
3
1
1
3
3
2
2
2
2
4
2
2
4
2
3
3
3
2
3
5
3
3
2
6
1
2
4
2
2
4
4
2
4
3
2
2
2
2
3
3
2
1
5
3
2
5
3
3
3
3
2
3
2
1
2
2
1
1
3
3
3
3
4
2
2
5
3
3
4
4
1
1
2
2
2
1
2
2
1
1
2
2
4
1
3
4
3
4
2
4
1
5
1
2
2
4
3
1
4
2
3
2
4
3
7
3
1
2
3
2
3
8
7
5
4
4
3
1
5
3
2
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 791 queries.

Test #25:

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

input:

200
6
6
5
5
3
3
1
3
2
4
6
4
5
5
3
7
5
3
7
10
6
4
8
1
2
3
4
3
4
5
5
6
2
5
5
10
10
1
1
7
2
3
6
4
2
8
5
3
3
3
1
7
5
9
4
3
2
4
3
3
3
3
7
7
4
2
4
1
9
4
4
3
6
6
1
4
2
2
7
5
6
3
7
3
5
4
4
6
2
3
4
5
9
6
2
8
4
6
3
1
7
4
3
4
3
8
3
8
12
3
4
3
3
7
2
7
7
6
8
5
3
6
6
3
6
4
5
7
6
3
1
3
1
3
1
2
4
2
5
2
4
4
5
3
5
2
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 716 queries.

Test #26:

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

input:

200
2
9
4
4
6
4
2
3
4
5
5
4
5
7
6
3
3
5
3
1
5
4
4
7
3
4
1
3
5
1
6
2
4
4
4
5
2
3
1
2
5
4
3
3
5
4
2
4
5
3
4
3
3
5
5
3
3
4
1
3
4
2
5
7
1
5
7
7
4
6
6
7
7
5
4
6
3
3
4
5
5
4
2
5
7
2
3
3
1
4
3
7
4
4
5
3
9
4
5
7
5
4
6
4
9
6
3
3
7
3
4
4
5
4
5
2
5
5
4
6
4
8
5
6
3
6
3
8
4
2
8
5
2
3
8
3
1
2
6
2
5
6
6
2
7
1
4
7
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 279 queries.

Test #27:

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

input:

200
4
3
3
1
5
5
4
1
1
4
5
2
2
2
1
5
3
5
4
2
6
7
2
6
1
1
8
2
8
4
3
4
1
5
2
1
4
3
3
4
2
3
5
5
2
1
3
4
2
8
2
4
4
3
6
4
7
1
1
6
2
6
4
5
6
2
1
6
2
2
9
3
3
1
1
1
2
5
3
6
1
2
3
4
7
3
2
5
4
5
3
3
4
6
5
4
6
4
1
2
4
6
8
3
2
4
3
3
5
6
5
4
3
4
4
3
5
2
2
4
5
5
4
2
1
6
3
5
7
6
3
2
2
6
3
1
4
4
4
3
2
1
3
1
4
6
4
3
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 548 queries.

Test #28:

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

input:

200
6
1
8
4
8
7
3
6
3
2
6
4
10
6
6
7
1
3
9
5
5
3
4
3
5
6
2
3
3
4
5
3
3
6
2
5
3
6
3
10
3
5
2
6
5
6
5
8
2
6
4
3
8
4
3
3
4
7
2
4
4
3
4
5
4
4
2
4
10
9
5
9
9
5
2
8
6
3
2
3
2
1
5
3
5
4
2
5
3
5
3
4
2
5
3
4
2
5
5
2
4
5
3
5
3
2
2
6
5
2
4
6
12
6
9
3
3
4
5
4
6
7
4
4
2
3
6
7
4
4
4
4
5
6
4
9
4
5
6
5
5
3
5
3
3
3
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 338 queries.

Test #29:

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

input:

200
7
4
6
3
4
2
3
3
1
9
4
6
2
4
7
3
4
4
3
8
5
6
3
7
10
5
7
4
5
2
3
6
3
2
3
3
3
1
6
5
3
3
4
4
3
5
4
3
5
4
5
8
4
4
5
4
6
3
3
6
4
2
3
4
3
3
2
2
4
4
2
6
3
8
5
4
2
7
2
5
6
5
2
9
2
4
4
5
1
5
9
6
6
8
5
2
5
7
3
4
6
4
2
3
4
6
6
5
7
4
7
7
2
5
6
3
4
3
4
4
6
2
2
5
2
4
5
6
3
5
3
8
4
2
2
4
6
2
9
6
3
8
4
5
6
2
3
7...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 622 queries.

Test #30:

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

input:

200
2
2
2
1
1
2
1
1
2
1
2
1
1
1
1
2
3
2
1
1
3
2
2
4
2
1
3
3
2
1
1
3
5
1
3
1
1
2
1
1
2
3
4
2
1
1
2
3
1
5
1
2
1
2
2
3
3
3
2
1
2
2
2
3
1
1
3
1
1
1
1
4
3
1
2
2
2
3
3
1
2
2
3
3
1
3
1
2
3
2
2
1
2
2
1
2
1
2
2
1
1
2
2
1
1
3
2
1
2
5
1
2
3
3
1
1
3
3
3
1
1
3
1
1
2
2
2
3
3
2
2
2
1
2
1
2
2
4
3
2
3
3
2
4
2
3
2
1
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 1716 queries.

Test #31:

score: 0
Accepted
time: 7ms
memory: 4156kb

input:

200
1
1
2
3
1
1
1
3
2
1
1
2
1
2
3
3
1
3
1
1
2
2
3
1
1
2
2
4
3
2
2
2
2
3
1
3
2
1
2
1
1
3
1
2
2
1
1
2
1
1
3
3
2
2
2
4
1
2
1
2
2
2
3
1
2
4
2
2
1
1
2
2
2
2
1
1
2
2
2
3
2
3
1
2
4
2
1
3
1
1
3
1
3
2
3
2
2
2
2
2
3
3
1
3
3
1
1
1
2
2
1
1
3
3
1
1
3
2
3
1
1
2
2
2
2
1
3
2
1
1
3
1
3
2
2
6
1
2
2
2
3
2
2
1
1
3
1
3
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 1690 queries.

Test #32:

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

input:

200
1
2
4
1
2
3
3
1
1
4
2
3
2
4
2
2
3
2
1
3
1
2
2
1
1
2
2
2
1
3
1
2
1
3
1
2
5
3
1
4
1
2
1
1
1
3
1
1
3
1
1
1
1
3
1
2
2
2
3
1
2
1
2
1
1
3
3
4
4
1
2
1
1
1
1
4
2
1
1
1
2
3
1
2
2
2
2
1
2
4
2
2
2
3
2
1
2
1
2
1
1
2
2
1
2
3
3
1
1
2
3
3
2
1
3
1
2
1
2
2
3
3
3
4
1
1
1
4
3
1
1
2
4
2
1
3
3
1
1
4
4
2
2
3
1
3
3
1
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 3050 queries.

Test #33:

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

input:

200
1
1
3
3
3
1
3
3
2
1
1
5
3
3
1
1
1
1
3
3
1
1
2
2
1
1
2
2
1
1
1
2
2
1
3
2
3
2
4
1
3
1
2
1
1
4
1
1
4
1
2
1
2
3
4
2
2
2
2
1
1
1
3
3
2
2
3
4
1
1
1
1
1
1
2
3
3
3
1
2
1
2
2
3
1
3
2
3
2
1
3
2
1
2
2
2
1
4
1
3
5
2
1
1
5
2
1
1
3
1
2
3
2
1
1
1
3
4
1
1
2
1
1
5
2
2
1
2
1
1
3
1
2
4
2
1
4
3
2
1
6
2
2
2
2
4
1
3
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 2537 queries.

Test #34:

score: 0
Accepted
time: 15ms
memory: 4312kb

input:

200
2
1
2
2
2
3
3
3
1
1
1
3
3
1
1
2
2
1
2
2
3
3
1
2
1
2
4
3
3
1
2
2
2
2
3
2
1
4
1
3
1
2
2
2
1
1
2
5
1
1
1
2
3
1
1
3
1
1
1
4
1
2
4
1
1
1
3
2
2
2
2
2
1
2
3
3
2
1
2
2
4
1
3
1
1
2
1
3
1
2
4
2
2
2
1
1
2
4
1
1
1
1
5
3
2
3
2
4
2
2
2
1
2
2
4
1
2
2
1
2
1
2
1
2
2
1
1
2
2
1
1
2
2
2
3
2
1
2
3
3
3
1
2
1
2
2
4
2
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

ok Correct answer with 2194 queries.

Test #35:

score: -100
Wrong Answer
time: 17ms
memory: 3804kb

input:

200
3
3
2
2
3
2
2
3
2
3
2
3
1
3
2
2
2
2
3
2
2
2
2
3
2
2
2
3
2
2
3
3
3
2
2
2
1
2
2
2
3
2
2
1
3
3
3
2
3
3
2
2
2
3
3
2
2
3
2
3
3
3
1
2
3
2
2
2
1
3
3
2
2
2
2
3
2
2
2
3
2
2
3
1
2
2
2
2
3
2
2
2
2
2
3
1
2
3
2
3
1
2
2
2
3
2
2
2
2
3
3
2
2
3
2
2
3
2
3
2
3
2
2
2
3
2
2
3
2
3
2
2
2
1
2
2
3
3
2
3
2
2
2
2
2
3
2
2
...

output:

? 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
? 01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000...

result:

wrong answer Wrong answer.