QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#300448#6303. Inversionmendicillin2#AC ✓136ms31572kbC++172.8kb2024-01-08 11:49:462024-01-08 11:49:46

Judging History

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

  • [2024-01-08 11:49:46]
  • 评测
  • 测评结果:AC
  • 用时:136ms
  • 内存:31572kb
  • [2024-01-08 11:49:46]
  • 提交

answer

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

template <class T> using V = vector<T>;
template <class T> using VV = V<V<T>>;

constexpr bool TESTING = false;

using ll = int64_t;

const int N = 2010;

int n;
int a_actual[N];
int id[N], a[N], ok[N][N], f[N][N];

int num_queries = 0;

inline bool qry(int l, int r) {
	assert(1 <= l && l <= r && r <= n);
	if (ok[l][r]) return f[l][r];
	cout << "? " << l << ' ' << r << endl;
	bool cur;
	if constexpr (!TESTING) {
		cin >> cur;
	} else {
		cur = false;
		for (int i = l; i <= r; i++) {
			for (int j = i+1; j <= r; j++) {
				cur ^= (a_actual[i] > a_actual[j]);
			}
		}
	}
	num_queries++;
	f[l][r] = cur;
	ok[l][r] = 1;
	return cur;
}

int ni[N], t[N];

inline int lowbit(int x) { return x & (-x); }

inline void add(int x, int r) {
	for (int i = x; i <= r; i += lowbit(i)) t[i] ^= 1;
}

inline bool sum(int x) {
	bool now = 0;
	for (int i = x; i; i -= lowbit(i)) now ^= t[i];
	return now;
}

inline void build(int r) {
	for (int i = 1; i <= r; i ++) t[i] = 0;
	for (int i = r; i >= 1; i --) { ni[i] = sum(a[i]); add(a[i], r); }
	for (int i = r - 1; i >= 1; i --) ni[i] ^= ni[i + 1];
}

inline bool check(int p, int x) {
	if (id[p] + 1 == x) return !qry(id[p], x);
	int a1 = qry(id[p], x), a2 = qry(id[p] + 1, x), a3 = ni[id[p]], a4 = ni[id[p] + 1];
	//cout << p << ' ' << id[p] << ' ' << x << endl;
	//cout << a1 << a2 << a3 << a4 << endl;
	return !(a1 ^ a2 ^ a3 ^ a4);
}

mt19937_64 mt(chrono::steady_clock::now().time_since_epoch().count());
int rand_int(int lo, int hi) {
	return uniform_int_distribution<int>(lo, hi)(mt);
}

int main() {
	ios_base::sync_with_stdio(false), cin.tie(nullptr);
	cout << fixed << setprecision(20);

	if constexpr (!TESTING) {
		cin >> n;
	} else {
		n = rand_int(3, 10);
		iota(a_actual + 1, a_actual + n + 1, 1);
		shuffle(a_actual + 1, a_actual + n + 1, mt);
	}

	id[1] = 1;
	a[1] = 1;
	for (int i = 2; i <= n; i ++) {
		int l = 1, r = i - 1, ans = 0;
		while (l <= r) {
			int mid = (l + r) >> 1;
			if (check(mid, i)) { ans = mid; l = mid + 1; }
			else r = mid - 1;
		}
		for (int j = i - 1; j > ans; j --) {
			a[id[j]] = j + 1;
			id[j + 1] = id[j];
		}
		id[ans + 1] = i;
		a[i] = ans + 1;
		build(i);
		//for (int j = 1; j <= n; j ++) cout << ni[j] << ' ';
		//cout << endl;
	} 
	cout << "! ";
	for (int i = 1; i < n; i ++) cout << a[i] << ' ';
	cout << a[n] << endl;
	assert(num_queries <= 40000);

	if constexpr (TESTING) {
		bool works = true;
		for (int i = 1; i <= n; i++) {
			works &= (a[i] == a_actual[i]);
		}
		if (!works) {
			for (int i = 1; i <= n; i++) {
				cerr << a[i] << " \n"[i==n];
			}
			for (int i = 1; i <= n; i++) {
				cerr << a_actual[i] << " \n"[i==n];
			}
			assert(false);
		}
	}

	return 0;
}
/*
1 2 6 4 3 5
2 3 5 4 1 6
*/

Details

Tip: Click on the bar to expand more detailed information

Test #1:

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

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: 136ms
memory: 30912kb

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: 103ms
memory: 29856kb

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: 70ms
memory: 29356kb

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: 81ms
memory: 29756kb

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: 89ms
memory: 29716kb

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: 87ms
memory: 29828kb

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: 60ms
memory: 29824kb

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: 72ms
memory: 29908kb

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: 67ms
memory: 29388kb

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: 64ms
memory: 31572kb

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: 107ms
memory: 31040kb

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: 38ms
memory: 29700kb

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: 60ms
memory: 29744kb

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: 99ms
memory: 29120kb

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: 87ms
memory: 30320kb

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: 108ms
memory: 31084kb

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: 91ms
memory: 31292kb

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: 1ms
memory: 3696kb

input:

1

output:

! 1

result:

ok OK, guesses=0

Test #20:

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

input:

2
0

output:

? 1 2
! 1 2

result:

ok OK, guesses=1

Test #21:

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

input:

2
1

output:

? 1 2
! 2 1

result:

ok OK, guesses=1

Test #22:

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

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: 71ms
memory: 29800kb

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: 63ms
memory: 29020kb

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: 60ms
memory: 29760kb

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