QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#857512#8871. Interactive Reconstructionasdfsdf#AC ✓69ms22552kbC++171.3kb2025-01-15 19:36:272025-01-15 19:36:28

Judging History

This is the latest submission verdict.

  • [2025-01-15 19:36:28]
  • Judged
  • Verdict: AC
  • Time: 69ms
  • Memory: 22552kb
  • [2025-01-15 19:36:27]
  • Submitted

answer

#include <bits/stdc++.h>
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
#pragma GCC target("avx,avx2,fma")
using namespace std;
typedef long long ll;
typedef pair<ll, ll> pll;
typedef pair<int, int> pii;
#define MAX 303030
#define MAXS 70
#define INF 1'000'000'100'000'000'000
#define bb ' '
#define ln '\n'
#define Ln '\n'
#define MOD 1'000'000'007
#define TC 1
int deg[MAX];
const int X = 15;
int qres[X][MAX];
signed main() {
	ios::sync_with_stdio(false), cin.tie(0);
	int N;
	cin >> N;
	int i, j;
	cout << "QUERY ";
	for (i = 0; i < N; i++) cout << "1";
	cout << endl;
	for (i = 0; i < N; i++) cin >> deg[i];
	for (i = 0; i < X; i++) {
		cout << "QUERY ";
		for (j = 0; j < N; j++) cout << (j >> i & 1);
		cout << endl;
		for (j = 0; j < N; j++) cin >> qres[i][j];
	}
	vector<pii> edges;
	queue<int> q;
	for (i = 0; i < N; i++) if (deg[i] == 1) q.push(i);
	while (q.size()) {
		if (edges.size() == N - 1) break;
		int t = q.front();
		q.pop();
		int p = 0;
		for (i = 0; i < X; i++) p |= (qres[i][t] << i);
		edges.emplace_back(p, t);
		deg[p]--;
		if (deg[p] == 1) q.push(p);
		for (i = 0; i < X; i++) if (t >> i & 1) qres[i][p]--;
	}
	cout << "ANSWER" << endl;
	for (auto& [a, b] : edges) cout << a + 1 << bb << b + 1 << endl;
}

詳細信息

Test #1:

score: 100
Accepted
time: 65ms
memory: 20496kb

input:

30000
1 1 3 3 1 3 1 1 3 1 3 1 1 3 3 3 3 1 3 3 1 3 3 1 3 1 1 1 3 3 3 3 3 1 1 3 3 3 1 3 3 3 1 3 3 3 3 1 1 3 3 1 3 3 3 1 1 1 3 1 1 3 1 1 3 1 3 1 3 1 3 3 3 3 1 3 1 1 1 3 3 1 3 3 3 3 1 3 1 3 1 3 3 3 3 1 1 3 3 1 3 3 3 1 3 3 1 3 3 3 1 1 3 1 1 1 1 1 3 1 3 1 3 1 1 3 3 3 3 3 3 3 1 1 1 3 1 1 3 3 3 1 1 1 3 1 1 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #2:

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

input:

16384
1 3 3 3 3 3 1 1 3 1 3 3 3 3 3 1 1 1 1 3 3 3 3 3 1 1 3 1 1 1 3 3 3 3 1 1 1 3 3 1 3 3 3 3 1 1 1 3 1 3 3 1 3 1 3 1 1 3 1 3 3 1 3 1 1 3 1 3 1 3 3 3 3 1 1 1 1 1 1 1 1 3 3 1 1 1 3 1 3 1 1 3 1 3 1 1 1 1 3 1 1 3 1 1 3 3 3 1 1 3 1 3 1 1 1 1 3 1 1 1 3 3 1 3 1 3 3 1 1 1 3 3 3 1 1 1 1 1 3 1 1 1 3 1 3 1 1 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #3:

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

input:

8
1 3 2 1 3 1 1 2
1 0 1 0 2 1 1 1
0 2 0 0 3 1 0 0
0 1 1 1 1 1 0 2
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
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:

QUERY 11111111
QUERY 01010101
QUERY 00110011
QUERY 00001111
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
ANSWER
2 1
5 4
8 6
2 7
5 8
3 2
3 5

result:

ok correct answer

Test #4:

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

input:

4
1 1 1 3
1 1 1 1
1 1 1 1
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
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:

QUERY 1111
QUERY 0101
QUERY 0011
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
QUERY 0000
ANSWER
4 1
4 2
4 3

result:

ok correct answer

Test #5:

score: 0
Accepted
time: 66ms
memory: 20448kb

input:

30000
1 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 1 2 2 2 2 2 2 3 2 3 2 2 2 2 4 2 2 2 2 2 2 2 2 2 2 2 2 2 1 1 2 2 2 3 2 2 2 2 2 2 2 1 2 2 2 1 3 1 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 1 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 1 2 3 2 3 2 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #6:

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

input:

29999
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 1 2 2 2 3 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 2 3 2 2 2 2 2 2 2 2 1 2 2 2 2 2 1 2 2 2 2 2 2 2 4 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 2 2 2 1 2 2 2 2 2 2 2 2 2 3 3 2 2 2 2 2 1 2 2 1 2 2 2 2 2 2 2 2 1 2 1 2 2 2 2 2 2 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #7:

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

input:

30000
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #8:

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

input:

29997
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #9:

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

input:

8
2 2 2 1 2 2 1 2
2 1 1 0 1 0 1 1
1 2 0 0 2 1 0 0
1 2 2 0 1 0 0 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
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:

QUERY 11111111
QUERY 01010101
QUERY 00110011
QUERY 00001111
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
ANSWER
1 4
2 7
6 1
8 2
3 6
5 8
5 3

result:

ok correct answer

Test #10:

score: 0
Accepted
time: 67ms
memory: 20500kb

input:

30000
2 2 1 4 10 4 3 1 1 1 1 1 4 1 1 1 2 4 2 3 1 2 4 1 1 3 1 5 1 1 5 3 1 1 2 2 1 4 1 3 3 2 2 2 2 1 1 2 3 4 3 4 1 2 2 3 1 1 1 1 1 1 3 2 1 2 2 1 1 2 1 2 2 2 1 1 3 1 4 1 2 1 3 2 1 2 1 1 1 3 1 7 2 1 2 1 1 6 2 1 5 4 1 1 2 1 1 1 3 1 1 1 1 1 1 4 3 3 2 1 2 1 2 1 1 1 5 1 4 2 1 1 1 1 4 1 1 2 1 7 2 1 1 1 1 1 1...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #11:

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

input:

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

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #12:

score: 0
Accepted
time: 69ms
memory: 22552kb

input:

30000
1 4 1 1 2 1 1 1 1 1 2 1 2 1 1 2 1 1 1 3 1 1 1 7 3 2 5 1 1 9 1 1 4 1 1 4 2 1 2 1 1 1 3 3 1 1 1 1 2 4 4 6 1 2 2 1 1 1 2 2 2 1 2 1 3 3 3 2 1 1 1 1 1 1 1 4 2 1 2 1 1 2 1 3 5 1 1 2 2 1 2 3 1 3 1 1 1 2 1 2 2 1 1 1 1 1 3 2 1 1 1 1 1 1 1 2 1 1 2 4 2 3 1 2 2 2 3 2 1 2 3 1 1 2 1 1 3 1 1 5 2 1 1 2 2 1 2 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #13:

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

input:

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

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #14:

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

input:

10
2 1 3 2 1 1 2 2 1 3
2 1 1 1 1 0 1 0 0 2
1 0 2 1 1 1 1 0 1 1
1 0 1 0 1 1 1 1 0 0
1 1 1 1 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 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:

QUERY 1111111111
QUERY 0101010101
QUERY 0011001100
QUERY 0000111100
QUERY 0000000011
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
QUERY 0000000000
ANSWER
10 2
8 5
7 6
3 9
1 8
...

result:

ok correct answer

Test #15:

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

input:

8
1 1 2 3 4 1 1 1
0 0 0 1 3 0 1 1
1 0 0 2 2 0 1 1
0 1 1 3 1 1 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
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:

QUERY 11111111
QUERY 01010101
QUERY 00110011
QUERY 00001111
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
QUERY 00000000
ANSWER
3 1
5 2
5 6
4 7
4 8
5 3
5 4

result:

ok correct answer

Test #16:

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

input:

30000
2 1 2 3 1 1 5 3 1 5 3 1 4 1 3 1 1 1 1 2 1 1 1 1 6 2 2 2 1 3 1 6 3 4 1 3 1 1 2 1 1 1 1 3 1 3 1 2 1 1 1 1 1 5 3 5 1 3 1 1 1 1 1 4 2 3 1 1 1 1 3 1 2 1 1 1 1 3 4 1 2 2 1 2 3 1 1 2 1 1 1 2 1 1 1 1 1 1 1 2 2 1 2 2 2 1 3 3 3 4 2 4 2 1 2 1 1 4 1 2 3 4 1 1 1 1 1 2 1 2 1 1 2 6 3 1 2 1 1 3 1 2 2 1 1 2 1 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #17:

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

input:

128
1 2 2 7 3 1 2 2 3 4 1 4 1 1 3 1 1 1 4 3 2 1 3 1 2 1 5 1 2 2 3 1 1 3 3 2 1 1 1 3 1 3 1 1 1 2 3 3 4 3 2 1 7 1 4 1 1 4 4 3 1 3 2 1 2 1 1 1 2 1 1 1 1 1 1 2 3 1 1 1 1 2 2 1 1 1 1 3 2 1 1 1 3 1 1 1 3 2 2 1 3 3 1 3 4 1 1 1 7 1 1 4 1 1 3 2 1 2 2 2 1 6 2 1 1 2 1 1
1 1 2 5 1 0 1 0 2 3 0 0 0 1 0 1 0 1 3 1 ...

output:

QUERY 11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
QUERY 01010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101
QUERY 001100110011001100110011...

result:

ok correct answer

Test #18:

score: 0
Accepted
time: 66ms
memory: 20696kb

input:

30000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

output:

QUERY 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111...

result:

ok correct answer

Test #19:

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

input:

3
1 1 2
0 0 1
1 1 0
0 0 0
0 0 0
0 0 0
0 0 0
0 0 0
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:

QUERY 111
QUERY 010
QUERY 001
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
QUERY 000
ANSWER
3 1
3 2

result:

ok correct answer

Test #20:

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

input:

2
1 1
1 0
0 0
0 0
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:

QUERY 11
QUERY 01
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
QUERY 00
ANSWER
2 1

result:

ok correct answer