QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#303742#6303. InversionhammerAC ✓76ms30524kbC++171.8kb2024-01-12 22:32:312024-01-12 22:32:31

Judging History

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

  • [2024-01-12 22:32:31]
  • 评测
  • 测评结果:AC
  • 用时:76ms
  • 内存:30524kb
  • [2024-01-12 22:32:31]
  • 提交

answer

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

constexpr int mod = 1e9 + 7;
const int N = 2e3 + 10;
int asked[N][N];
int res[N][N];
int id2rank[N];
int rank2id[N];
int now;
int qcnt;
int query(int l, int r)
{
    // printf("q %d %d\n",l,r);
    if (l >= r)
        return 0;
    if (asked[l][r])
        return res[l][r];
    int ans = 0;
    if (r <= now) {
        return res[l][r];
    } else {
        qcnt++;
        assert(qcnt <= 40000);
        printf("? %d %d\n", l, r);
        fflush(stdout);
        scanf("%d", &ans);
    }
    asked[l][r] = 1;
    res[l][r] = ans;
    return ans;
}
int cmp(int l, int r)
{
    int af = query(l, r);
    int sf = query(l + 1, r);
    int ad = query(l, r - 1);
    int sd = query(l + 1, r - 1);
    int ans = af ^ sf ^ ad ^ sd;
    // printf("ans %d\n", ans);
    return ans;
}
int main()
{
    int n;
    scanf("%d", &n);
    id2rank[1] = 1;
    rank2id[1] = 1;
    for (int i = 2; i <= n; i++) {
        now = i - 1;
        int L = 1, R = i;
        while (L < R) {
            int mid = L + R >> 1;
            // printf("L %d R %d cmp %d %d\n",L,R,rank2id[mid],i);
            if (!cmp(rank2id[mid], i)) {
                L = mid + 1;
            } else {
                R = mid;
            }
        }

        for (int x = i - 1; x >= L; x--) {
            id2rank[rank2id[x]]++;
            // rank2id[x+1]=rank2id[x];
        }
        id2rank[i] = L;
        for (int x = 1; x <= i; x++)
            rank2id[id2rank[x]] = x;
        int sum = 0;
        for (int x = i - 1; x >= 1; x--)
        {
            sum += id2rank[x] > id2rank[i];
            res[x][i] = (res[x][i - 1] + sum) % 2;
        }
    }
    printf("!");
    for (int i = 1; i <= n; i++)
        printf(" %d", id2rank[i]);
    puts("");
    fflush(stdout);
    return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

input:

3
0
1
0

output:

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

result:

ok OK, guesses=3

Test #2:

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

input:

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

output:

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

result:

ok OK, guesses=37996

Test #3:

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

input:

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

output:

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

result:

ok OK, guesses=35504

Test #4:

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

input:

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

output:

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

result:

ok OK, guesses=35493

Test #5:

score: 0
Accepted
time: 58ms
memory: 28196kb

input:

1877
0
1
0
1
0
0
1
1
1
0
0
1
1
0
0
0
1
1
0
1
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
1
0
1
0
1
1
1
1
0
0
1
0
1
1
1
0
0
0
0
1
1
1
1
1
1
0
0
1
1
0
0
1
0
0
1
1
1
0
1
1
1
0
0
0
1
0
1
1
0
0
1
1
0
0
1
1
0
0
0
0
0
1
1
0
1
0
0
0
0
1
0
0
0
0
1
0
1
0
0
0
1
0
1
0
1
1
1
1
0
0
0
0
1
0
0
1
1
1
1
0
1
0
1
1
1
1
0
0
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
? 4 8
? 5 8
? 1 8
? 2 8
? 8 9
? 4 9
? 5 9
? 2 9
? 3 9
? 8 10
? 9 10
? 2 10
? 3 10
? 1 11
? 2 11
? 3 11
? 4 11
? 5 11
? 6 11
? 8 12
? 9 12
? 11 12
? 5 12
? 6 12
? 7 12
?...

result:

ok OK, guesses=35268

Test #6:

score: 0
Accepted
time: 63ms
memory: 28248kb

input:

1871
1
0
0
1
0
1
0
1
0
0
0
0
1
1
1
0
0
0
1
0
1
0
1
0
1
1
1
0
1
0
0
1
1
1
1
0
0
1
0
1
1
0
0
0
0
0
0
0
1
1
0
1
1
0
0
0
0
1
0
0
1
0
1
0
1
1
1
1
0
1
0
0
0
1
0
1
0
1
0
0
1
1
1
0
1
1
0
1
1
1
0
0
0
0
0
1
0
1
1
1
0
0
0
1
0
0
0
0
1
1
1
1
0
1
0
1
1
0
0
1
0
1
0
1
0
1
0
0
1
1
1
1
0
1
1
0
0
1
0
0
0
1
1
1
0
1
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
? 2 6
? 5 6
? 3 7
? 4 7
? 5 7
? 6 7
? 1 7
? 2 7
? 3 8
? 4 8
? 5 8
? 2 8
? 3 9
? 4 9
? 1 9
? 2 9
? 5 9
? 6 9
? 3 10
? 4 10
? 8 10
? 9 10
? 2 10
? 3 11
? 4 11
? 8 11
? 9 11
? 5 11
? 6 11
? 7 11
? 10 12
? 11 12
? 4 12
? 5 12
? 2 12
? 3 1...

result:

ok OK, guesses=35190

Test #7:

score: 0
Accepted
time: 44ms
memory: 30000kb

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
? 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=32793

Test #8:

score: 0
Accepted
time: 55ms
memory: 30160kb

input:

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

output:

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

result:

ok OK, guesses=34429

Test #9:

score: 0
Accepted
time: 56ms
memory: 29244kb

input:

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

output:

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

result:

ok OK, guesses=35836

Test #10:

score: 0
Accepted
time: 76ms
memory: 29376kb

input:

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

output:

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

result:

ok OK, guesses=36564

Test #11:

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

input:

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

output:

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

result:

ok OK, guesses=37509

Test #12:

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

input:

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

output:

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

result:

ok OK, guesses=37902

Test #13:

score: 0
Accepted
time: 49ms
memory: 30524kb

input:

1992
1
1
1
1
1
0
1
1
0
1
1
0
0
1
1
0
0
1
1
1
0
0
1
1
1
0
0
1
1
1
1
0
1
1
1
1
0
1
1
0
1
0
0
1
1
0
1
0
0
1
1
0
0
0
0
1
1
0
0
0
0
1
1
1
0
1
0
0
1
1
1
0
1
0
0
1
1
1
1
1
0
0
1
1
1
1
1
0
0
1
1
0
1
1
1
0
1
1
0
1
1
1
0
1
1
0
0
1
1
0
1
1
0
0
1
1
0
1
1
1
0
0
1
0
0
1
1
1
0
0
1
0
0
1
1
1
1
0
1
0
0
1
1
1
1
0
1
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=34727

Test #14:

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

input:

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

output:

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

result:

ok OK, guesses=35654

Test #15:

score: 0
Accepted
time: 43ms
memory: 28920kb

input:

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

output:

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

result:

ok OK, guesses=36635

Test #16:

score: 0
Accepted
time: 60ms
memory: 29192kb

input:

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

output:

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

result:

ok OK, guesses=37249

Test #17:

score: 0
Accepted
time: 50ms
memory: 30292kb

input:

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

output:

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

result:

ok OK, guesses=37619

Test #18:

score: 0
Accepted
time: 49ms
memory: 30208kb

input:

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

output:

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

result:

ok OK, guesses=37920

Test #19:

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

input:

1

output:

! 1

result:

ok OK, guesses=0

Test #20:

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

input:

2
0

output:

? 1 2
! 1 2

result:

ok OK, guesses=1

Test #21:

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

input:

2
1

output:

? 1 2
! 2 1

result:

ok OK, guesses=1

Test #22:

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

input:

1997
1
1
0
1
1
1
1
1
1
0
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
0
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
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
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
0
1
1
1
1
1
1
1
1
1
1...

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
? 5 8
? 3 8
? 4 8
? 3 9
? 4 9
? 5 9
? 6 9
? 7 9
? 8 9
? 3 10
? 4 10
? 7 10
? 8 10
? 5 10
? 6 10
? 8 11
? 9 11
? 7 11
? 10 11
? 8 12
? 9 12
? 7 12
? 11 12
? 10 12
? 5 13
? 6 13
? 12 13
? ...

result:

ok OK, guesses=33724

Test #23:

score: 0
Accepted
time: 40ms
memory: 29968kb

input:

1998
1
1
0
1
1
1
1
1
1
0
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
0
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
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
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
0
1
1
1
1
1
1
1
1
1
1...

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
? 5 8
? 3 8
? 4 8
? 3 9
? 4 9
? 5 9
? 6 9
? 7 9
? 8 9
? 3 10
? 4 10
? 7 10
? 8 10
? 5 10
? 6 10
? 8 11
? 9 11
? 7 11
? 10 11
? 8 12
? 9 12
? 7 12
? 11 12
? 10 12
? 5 13
? 6 13
? 12 13
? ...

result:

ok OK, guesses=33745

Test #24:

score: 0
Accepted
time: 27ms
memory: 30440kb

input:

1999
1
1
0
1
1
1
1
1
1
0
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
0
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
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
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
0
1
1
1
1
1
1
1
1
1
1...

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
? 5 8
? 3 8
? 4 8
? 3 9
? 4 9
? 5 9
? 6 9
? 7 9
? 8 9
? 3 10
? 4 10
? 7 10
? 8 10
? 5 10
? 6 10
? 8 11
? 9 11
? 7 11
? 10 11
? 8 12
? 9 12
? 7 12
? 11 12
? 10 12
? 5 13
? 6 13
? 12 13
? ...

result:

ok OK, guesses=33763

Test #25:

score: 0
Accepted
time: 48ms
memory: 29836kb

input:

2000
1
1
0
1
1
1
1
1
1
0
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
0
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
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
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
0
1
1
1
1
1
1
1
1
1
1...

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
? 5 8
? 3 8
? 4 8
? 3 9
? 4 9
? 5 9
? 6 9
? 7 9
? 8 9
? 3 10
? 4 10
? 7 10
? 8 10
? 5 10
? 6 10
? 8 11
? 9 11
? 7 11
? 10 11
? 8 12
? 9 12
? 7 12
? 11 12
? 10 12
? 5 13
? 6 13
? 12 13
? ...

result:

ok OK, guesses=33784