QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#245020#6303. Inversionhhoppitree#AC ✓88ms19556kbC++142.3kb2023-11-09 17:53:382023-11-09 17:53:39

Judging History

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

  • [2023-11-09 17:53:39]
  • 评测
  • 测评结果:AC
  • 用时:88ms
  • 内存:19556kb
  • [2023-11-09 17:53:38]
  • 提交

answer

#include <bits/stdc++.h>
#define DEBUG 0

using namespace std;

const int N = 2005;

int n, o[N], p[N], f[N][N], g[N], s[N], ct;

void modify(int x)
{
    for (; x <= n; x += x & -x) {
        ++s[x];
    }
    return;
}

int query(int x)
{
    int res = 0;
    for (; x; x -= x & -x) {
        res += s[x];
    }
    return res;
}

int query(int x, int y)
{
    if (x >= y) {
        return 0;
    }
    if (~f[x][y]) {
        return f[x][y];
    }
    if (p[y]) {
        return g[x] & 1;
    }
    ++ct;
    if (DEBUG) {
        int z = 0;
        for (int i = x; i < y; ++i) {
            for (int j = i + 1; j <= y; ++j) {
                z ^= o[i] > o[j];
            }
        }
        return f[x][y] = z;
    }
    printf("? %d %d\n", x, y);
    fflush(stdout);
    int v;
    scanf("%d", &v);
    return f[x][y] = v;
}

signed main()
{
    memset(f, -1, sizeof(f));
    scanf("%d", &n);
    if (DEBUG) {
        for (int i = 1; i <= n; ++i) {
            o[i] = i;
        }
        mt19937 rnd;
        shuffle(o + 1, o + n + 1, rnd);
        for (int i = 1; i <= n; ++i) {
            printf("%d%c", o[i], " \n"[i == n]);
        }
    }
    p[1] = 1;
    for (int i = 2; i <= n; ++i) {
        int l = 1, r = i - 1, res = 0;
        while (l <= r) {
            int mid = (l + r) >> 1, wh = 0;
            for (int j = 1; j < i; ++j) {
                if (p[j] == mid) {
                    wh = j;
                    break;
                }
            }
            if (!(query(wh, i) ^ query(wh, i - 1) ^ query(wh + 1, i) ^ query(wh + 1, i - 1))) {
                res = mid;
                l = mid + 1;
            } else {
                r = mid - 1;
            }
        }
        p[i] = res + 1;
        for (int j = 1; j < i; ++j) {
            if (p[j] > res) {
                ++p[j];
            }
        }
        for (int j = 1; j <= n; ++j) {
            s[j] = 0;
        }
        modify(p[i]);
        for (int j = i - 1; j; --j) {
            g[j] = g[j + 1] + query(p[j]);
            modify(p[j]);
        }
    }
    if (DEBUG) {
        printf("# %d #\n", ct);
    }
    printf("!");
    for (int i = 1; i <= n; ++i) {
        printf(" %d", p[i]);
    }
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 19356kb

input:

3
0
0
1

output:

? 1 2
? 1 3
? 2 3
! 2 3 1

result:

ok OK, guesses=3

Test #2:

score: 0
Accepted
time: 81ms
memory: 19296kb

input:

1993
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
1
0
0
0
1
1
1
1
1
1
1
1
1
1
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
0
1
1
1
1
0
1
1
1
1
1
0
0
0
1
0
1
0
1
0
0
0
0
1
1
0
0
1
0
0
1
1
1
1
1
0
1
1
1
1
1
1
0
0
0
0
0
0
1
0
1
1
1
0
0
1
0
1
1
0
1
1
0
1
1
0
0
1
0
0
0
1
1
0
1
1
0
0
0
1
0
1
0
0
1
1
0
0
1
0
0
1
1
1
1
1
1
0
0
1...

output:

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

result:

ok OK, guesses=37850

Test #3:

score: 0
Accepted
time: 54ms
memory: 19548kb

input:

1887
1
0
0
0
0
0
1
1
1
1
0
0
0
0
1
1
1
0
0
1
0
0
0
0
1
1
0
1
1
0
1
0
1
0
0
0
0
1
0
0
1
1
0
0
1
1
1
1
1
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
0
0
0
0
1
0
1
1
0
1
1
1
0
0
0
0
1
1
0
0
1
1
0
0
1
0
1
1
0
0
0
1
0
1
0
1
1
0
0
0
1
0
1
0
1
1
0
0
1
0
1
0
0
1
0
0
1
0
1
0
0
0
1
1
1
0
1
1
1
1
0
0
0
1
0
0
1
1
0
1
1
1
0
0...

output:

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

result:

ok OK, guesses=35522

Test #4:

score: 0
Accepted
time: 62ms
memory: 19316kb

input:

1882
1
0
1
0
0
1
0
0
0
1
1
0
0
1
1
1
0
1
1
0
1
1
1
1
1
1
0
1
1
0
0
1
1
0
1
1
1
0
0
0
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
0
0
1
0
1
1
0
0
1
1
1
1
0
0
0
1
1
0
1
1
0
1
0
1
0
1
1
0
1
1
0
0
1
0
1
0
1
1
1
1
1
1
0
0
0
1
1
0
1
0
0
1
1
1
0
1
0
0
0
1
1
0
0
0
0
1
1
1
0
1
0
0
0
0
0
0
1
1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
0...

output:

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

result:

ok OK, guesses=35432

Test #5:

score: 0
Accepted
time: 64ms
memory: 19392kb

input:

1877
0
0
1
1
0
0
1
1
0
1
0
1
0
1
0
1
0
1
0
0
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
1
0
1
1
1
1
1
0
0
0
0
1
0
1
0
0
0
1
1
1
0
1
0
1
0
1
1
0
0
1
0
0
1
1
1
0
0
1
0
0
0
1
0
1
0
0
0
0
1
0
0
1
1
1
1
0
0
1
0
0
1
0
0
0
0
0
0
1
1
0
1
0
1
0
1
0
1
0
0
1
0
1
0
0
1
1
0
0
0
0
1
1
0
0
1
1
0
0
0
0
1
1
0
0
0
0
0
0
0...

output:

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

result:

ok OK, guesses=35365

Test #6:

score: 0
Accepted
time: 88ms
memory: 19548kb

input:

1871
1
0
0
1
0
0
1
0
1
0
0
1
1
1
0
1
0
1
0
1
1
0
1
0
1
0
1
0
0
1
1
1
1
1
0
0
1
1
0
0
0
0
0
1
0
0
1
1
1
1
0
1
0
0
0
0
0
0
0
1
0
1
1
0
1
1
0
1
1
1
0
1
0
0
1
0
1
1
0
0
0
1
1
1
1
1
1
0
1
1
0
1
0
0
1
0
0
1
0
1
1
1
0
0
0
0
1
1
1
1
1
0
0
1
0
1
0
0
1
0
1
1
1
0
0
1
0
1
1
0
1
1
1
1
0
1
0
1
1
0
1
1
0
0
1
0
0
1...

output:

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

result:

ok OK, guesses=35212

Test #7:

score: 0
Accepted
time: 59ms
memory: 19356kb

input:

1994
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
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...

output:

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

result:

ok OK, guesses=34767

Test #8:

score: 0
Accepted
time: 61ms
memory: 19316kb

input:

1990
0
0
0
0
1
1
1
0
0
0
0
0
0
1
1
0
1
1
1
1
0
0
1
1
0
0
0
1
1
0
0
1
0
1
1
0
1
0
0
1
1
1
0
0
1
1
0
0
1
0
1
0
0
0
0
0
0
0
1
1
1
1
0
1
0
0
1
0
1
0
0
0
0
0
0
1
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
0
0
0
1
1
0
0
0
0
0
0
0
0
1
0
1
1
1
1
0
1
0
1
1
1
1
1
1
1
0
1
1
1
1
0
1
0
1
1
1
1
1
0
1
0
1
1
0
0
0
1
1
0
0
0
1
1...

output:

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

result:

ok OK, guesses=35721

Test #9:

score: 0
Accepted
time: 71ms
memory: 19308kb

input:

1981
1
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
1
1
1
1
1
1
0
1
1
1
1
0
0
1
0
0
0
0
0
1
0
0
0
1
1
0
1
0
0
1
0
0
0
1
0
1
0
1
0
0
1
1
0
1
0
1
0
1
0
1
1
1
0
0
1
0
1
1
1
0
0
1
1
0
0
0
0
0
0
0
0
0
0
0
1
1
0
0
1
0
1
1
1
0
0
0
0
0
1
1
0
0
0
0
1
0
0
0
1
0
1
0
1
1
1
0
1
1
1
1
0
1
1
1
0
0
0
0
1
0
1
0
1
1
0
1
1
0
0
0
1
0...

output:

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

result:

ok OK, guesses=36621

Test #10:

score: 0
Accepted
time: 75ms
memory: 19312kb

input:

1988
0
1
1
0
0
0
1
0
1
0
1
0
1
1
1
1
1
1
1
0
1
0
0
1
1
1
0
0
1
1
1
1
1
1
0
0
0
0
0
1
1
0
1
0
0
1
0
0
1
0
0
0
1
0
1
0
0
0
0
0
1
1
1
1
1
1
0
1
1
0
0
1
1
0
0
0
1
0
0
1
0
0
0
1
0
0
1
1
0
1
1
1
1
0
0
1
1
1
1
0
0
0
1
0
0
1
1
1
1
0
0
1
0
1
0
0
0
0
0
1
1
0
1
1
1
0
0
0
0
1
0
0
1
0
0
1
1
1
1
1
1
0
1
0
1
0
1
0...

output:

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

result:

ok OK, guesses=37080

Test #11:

score: 0
Accepted
time: 65ms
memory: 19504kb

input:

1991
0
1
1
0
0
1
1
1
0
0
0
1
1
0
1
0
1
0
0
0
1
0
0
0
0
0
1
1
0
1
0
1
0
0
1
1
0
1
1
1
0
0
0
1
0
0
0
0
1
1
0
0
1
1
1
1
0
0
1
0
0
0
0
0
0
0
0
1
1
1
0
0
0
0
0
0
0
0
1
0
0
1
0
1
1
0
0
0
0
1
1
0
0
0
1
1
0
0
1
1
0
0
1
1
0
0
1
0
0
1
1
1
0
0
1
1
0
1
1
0
1
0
0
0
1
0
1
0
1
1
0
0
0
1
0
0
0
0
0
1
1
1
1
0
1
1
1
1...

output:

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

result:

ok OK, guesses=37783

Test #12:

score: 0
Accepted
time: 84ms
memory: 19312kb

input:

1996
0
0
1
1
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
1
1
1
1
1
0
1
0
1
0
1
0
0
1
1
1
1
1
1
1
1
0
0
1
1
1
0
0
0
1
1
1
0
0
1
0
1
1
1
1
1
1
0
0
0
1
1
0
1
1
0
0
1
0
0
1
0
1
1
0
1
1
0
0
1
1
1
0
1
1
0
1
1
0
1
1
0
1
0
0
1
0
0
1
0
1
1
1
1
0
0
1
1
0
0
1
0
0
1
1
0
0
0
0
0
0
0
1
0
0
0
0
1
1
0
0
0
1
0
0
0
0
0
1
0
1
0
0
1...

output:

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

result:

ok OK, guesses=37872

Test #13:

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

input:

1992
1
1
1
1
1
1
0
1
1
0
1
1
0
0
1
1
0
0
1
1
1
0
1
1
1
0
1
1
1
1
0
1
1
1
1
0
1
1
0
1
0
1
1
0
1
0
1
1
0
0
0
0
1
1
0
0
0
0
1
1
1
0
0
0
1
1
1
0
0
0
1
1
1
1
1
0
1
1
1
1
1
0
1
1
0
1
1
0
1
1
0
1
1
0
1
1
0
0
1
1
0
1
1
0
0
1
1
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
1
1
1
1
0
1
0
1
1
1
1
0
1
0
1
1
0
1
0
1
0
1
1
0
1
0...

output:

? 1 2
? 2 3
? 2 4
? 3 4
? 3 5
? 4 5
? 3 6
? 4 6
? 5 6
? 4 7
? 5 7
? 6 7
? 4 8
? 5 8
? 6 8
? 7 8
? 5 9
? 6 9
? 7 9
? 8 9
? 5 10
? 6 10
? 8 10
? 9 10
? 6 11
? 7 11
? 9 11
? 10 11
? 6 12
? 7 12
? 9 12
? 10 12
? 11 12
? 7 13
? 8 13
? 10 13
? 11 13
? 12 13
? 7 14
? 8 14
? 11 14
? 12 14
? 13 14
? 8 15
? 9...

result:

ok OK, guesses=32755

Test #14:

score: 0
Accepted
time: 85ms
memory: 19248kb

input:

1988
1
0
0
1
0
0
1
0
1
1
1
1
0
0
1
1
0
1
1
0
1
0
1
0
1
1
0
1
0
0
0
0
1
1
1
1
1
0
1
0
0
1
1
1
0
0
1
1
1
1
0
1
0
1
0
0
1
1
1
1
0
1
1
0
0
0
1
0
1
0
0
1
1
1
0
1
0
1
1
1
0
0
1
0
0
0
1
1
1
0
1
1
0
0
1
1
1
1
1
1
0
1
0
1
0
0
1
1
0
1
1
0
1
1
1
1
0
1
0
0
1
0
0
1
0
1
1
0
0
0
1
0
0
0
0
1
1
0
0
1
1
0
1
0
1
1
0
1...

output:

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

result:

ok OK, guesses=34332

Test #15:

score: 0
Accepted
time: 81ms
memory: 19320kb

input:

1983
1
1
0
0
0
0
0
1
0
1
1
1
1
1
0
0
0
0
1
1
1
0
1
1
1
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
1
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
0
0
1
0
0
1
0
1
0
1
1
1
1
0
0
1
0
1
0
0
1
1
1
1
0
0
0
1
1
1
0
0
0
0
1
0
0
0
0
0
0
1
1
1
0
1
1
0
1
0
1
0
0
0
0
0
0
1
0
1
1
0
0
1
1
1
0
1
1
0
0
1
1
1
0
0
0
1
1
1
1
1
1
1
0
1
1
0
0
1
0
0...

output:

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

result:

ok OK, guesses=35877

Test #16:

score: 0
Accepted
time: 71ms
memory: 19556kb

input:

1990
1
0
1
1
1
1
0
1
0
0
1
1
0
1
1
1
1
0
0
0
0
0
0
0
0
1
0
0
0
1
1
0
1
1
0
0
1
0
0
1
0
1
1
1
1
1
0
0
0
1
1
1
0
0
0
0
1
0
1
1
0
0
1
0
1
0
1
0
0
0
0
0
0
1
0
1
1
0
1
1
0
1
0
0
1
1
0
0
0
1
0
0
1
0
1
1
1
0
0
0
0
1
0
1
1
0
1
1
1
1
1
0
1
0
1
1
0
1
1
1
1
0
1
1
1
1
1
1
1
0
1
0
0
1
0
0
0
0
1
0
0
0
1
1
0
0
1
0...

output:

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

result:

ok OK, guesses=36609

Test #17:

score: 0
Accepted
time: 80ms
memory: 19296kb

input:

1989
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
1
1
0
1
0
0
1
0
1
0
0
1
1
0
1
1
0
1
1
1
1
1
1
0
1
1
0
1
0
0
0
1
0
0
0
0
1
0
1
1
1
1
1
1
1
0
1
1
1
0
1
0
1
0
1
0
0
1
1
1
0
0
1
1
0
0
0
1
0
1
1
0
1
0
1
0
0
1
0
1
0
1
0
0
1
0
0
0
1
1
1
1
0
1
0
1
1
0
0
0
1
1
1
1
1
0
0
1
1
0
1
0
0
0
1
0
0
1
0
1
1
0
0
1
0
1
1
1
0
1
1
0...

output:

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

result:

ok OK, guesses=37454

Test #18:

score: 0
Accepted
time: 57ms
memory: 19344kb

input:

1998
0
0
1
0
0
0
1
1
1
1
1
1
0
1
1
1
0
0
0
0
1
0
0
0
0
1
0
0
0
0
1
1
1
0
0
1
0
0
0
1
0
1
0
0
0
1
0
0
1
1
1
0
1
0
0
0
0
1
1
1
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
0
0
0
1
0
1
0
1
0
1
0
0
0
0
0
0
1
0
1
0
0
0
1
0
1
0
1
1
0
0
1
0
0
0
1
0
1
0
1
0
1
1
1
1
0
1
0
0
0
0
0
0
1
1
0
0
1
0
0
1
0
0
0
1
1
0
1
0...

output:

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

result:

ok OK, guesses=37848

Test #19:

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

input:

1

output:

! 1

result:

ok OK, guesses=0

Test #20:

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

input:

2
0

output:

? 1 2
! 1 2

result:

ok OK, guesses=1

Test #21:

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

input:

2
1

output:

? 1 2
! 2 1

result:

ok OK, guesses=1

Test #22:

score: 0
Accepted
time: 57ms
memory: 19384kb

input:

1997
1
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1...

output:

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

result:

ok OK, guesses=35294

Test #23:

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

input:

1998
1
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1...

output:

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

result:

ok OK, guesses=35314

Test #24:

score: 0
Accepted
time: 62ms
memory: 19328kb

input:

1999
1
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1...

output:

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

result:

ok OK, guesses=35336

Test #25:

score: 0
Accepted
time: 46ms
memory: 19300kb

input:

2000
1
0
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1...

output:

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

result:

ok OK, guesses=35356