QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#858257#6668. Trokutiaoliao100 ✓8ms4096kbC++143.1kb2025-01-16 15:23:162025-01-16 15:23:26

Judging History

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

  • [2025-01-16 15:23:26]
  • 评测
  • 测评结果:100
  • 用时:8ms
  • 内存:4096kb
  • [2025-01-16 15:23:16]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
mt19937 rd(0);

const int N = 110;
int n = 100, cnt, d[N][N], id[N];

int main()
{
	memset(d, -1, sizeof(d));
	for(int i = 1; i <= n; i++) d[i][i] = 0, id[i] = i;
	
	while(1)
	{
		shuffle(id + 1, id + n + 1, rd);
		printf("? %d %d %d\n", id[1], id[2], id[3]);
		fflush(stdout);
		scanf("%d", &cnt);
		if(cnt == 0 || cnt == 3)
		{
			d[id[1]][id[2]] = d[id[1]][id[3]] = d[id[2]][id[1]] = d[id[2]][id[3]] = d[id[3]][id[1]] = d[id[3]][id[2]] = !!cnt;
			break;
		}
	}
	
	for(int i = 4; i <= n; i++)
	{
		shuffle(id + 1, id + i, rd);
		vector<vector<int> > s;
		for(int j = 1; j < i; j += 2)
			if(j + 1 < i)
			{
				printf("? %d %d %d\n", id[j], id[j + 1], id[i]);
				fflush(stdout);
				scanf("%d", &cnt);
				cnt -= d[id[j]][id[j + 1]];
				if(cnt == 0 || cnt == 2)
					d[id[i]][id[j]] = d[id[i]][id[j + 1]] = d[id[j]][id[i]] = d[id[j + 1]][id[i]] = !!cnt;
				else s.push_back(vector<int>({id[j], id[j + 1]}));
			}
			else
			{
				printf("? %d %d %d\n", id[j], id[j - 1], id[i]);
				fflush(stdout);
				scanf("%d", &cnt);
				cnt -= d[id[j]][id[j - 1]];
				if(~d[id[i]][id[j - 1]])
					d[id[i]][id[j]] = d[id[j]][id[i]] = cnt - d[id[i]][id[j - 1]];
				else
				{
					if(cnt == 0 || cnt == 2)
					{
						d[id[i]][id[j]] = d[id[i]][id[j - 1]] = d[id[j]][id[i]] = d[id[j - 1]][id[i]] = !!cnt;
						d[id[i]][id[j - 2]] = d[id[j - 2]][id[i]] = !cnt;
						s.pop_back();
					}
					else s.back().push_back(id[j]);
				}
			}
		
		while(!s.empty())
		{
			if(s.size() == 1)
			{
				vector<int> s1 = s[0];
				if(s1.size() == 2)
				{
					int t = 1;
					while(id[t] == s1[0] || id[t] == s1[1]) t++;
					printf("? %d %d %d\n", s1[0], id[t], id[i]);
					fflush(stdout);
					scanf("%d", &cnt);
					cnt -= d[id[t]][id[i]] + d[id[t]][s1[0]];
					d[id[i]][s1[0]] = d[s1[0]][id[i]] = cnt, d[id[i]][s1[1]] = d[s1[1]][id[i]] = !cnt;
				}
				else
				{
					printf("? %d %d %d\n", s1[0], s1[2], id[i]);
					fflush(stdout);
					scanf("%d", &cnt);
					cnt -= d[s1[0]][s1[2]], cnt = !!cnt;
					for(int j : s1) d[id[i]][j] = d[j][id[i]] = cnt, cnt = !cnt;
				}
				break;
			}
			
			shuffle(s.begin(), s.end(), rd);
			vector<vector<int> > s1;
			for(int j = 0; j < s.size(); j += 2)
				if(j + 1 < s.size())
				{
					if(rd() & 1) reverse(s[j].begin(), s[j].end());
					if(rd() & 1) reverse(s[j + 1].begin(), s[j + 1].end());
					printf("? %d %d %d\n", s[j].back(), s[j + 1][0], id[i]);
					fflush(stdout);
					scanf("%d", &cnt);
					cnt -= d[s[j].back()][s[j + 1][0]];
					if(cnt == 0 || cnt == 2)
					{
						int t = !!cnt;
						reverse(s[j].begin(), s[j].end());
						for(int k : s[j]) d[k][id[i]] = d[id[i]][k] = t, t = !t;
						t = !!cnt;
						for(int k : s[j + 1]) d[k][id[i]] = d[id[i]][k] = t, t = !t;
					}
					else
					{
						for(int k : s[j + 1]) s[j].push_back(k);
						s1.push_back(s[j]);
					}
				}
				else s1.push_back(s[j]);
			s = s1;
		}
	}
	
	puts("!");
	for(int i = 1; i <= n; i++)
	{
		for(int j = 1; j <= n; j++) putchar(d[i][j] ^ 48);
		puts("");
	}
	return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 100
Accepted

Test #1:

score: 100
Accepted
time: 4ms
memory: 3968kb

input:

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

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 61 54 75
? 38 27 75
? 9...

result:

points 1.0 points  1.0 correct 2499 queries

Test #2:

score: 100
Accepted
time: 7ms
memory: 4096kb

input:

3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 61 54 75
? 38 27 75
? 9...

result:

points 1.0 points  1.0 correct 2499 queries

Test #3:

score: 100
Accepted
time: 3ms
memory: 3968kb

input:

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

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 61 54 75
? 38 27 75
? 9...

result:

points 1.0 points  1.0 correct 2500 queries

Test #4:

score: 100
Accepted
time: 3ms
memory: 3840kb

input:

3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 61 54 75
? 38 27 75
? 9...

result:

points 1.0 points  1.0 correct 2500 queries

Test #5:

score: 100
Accepted
time: 2ms
memory: 3968kb

input:

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

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 61 54 75
? 38 27 75
? 9...

result:

points 1.0 points  1.0 correct 2508 queries

Test #6:

score: 100
Accepted
time: 3ms
memory: 3840kb

input:

3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
2
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 61 54 75
? 38 27 75
? 9...

result:

points 1.0 points  1.0 correct 2509 queries

Test #7:

score: 100
Accepted
time: 6ms
memory: 3840kb

input:

0
0
1
2
1
1
0
1
2
1
2
2
1
1
1
1
1
0
1
1
0
1
0
0
0
1
1
1
1
0
0
2
2
1
1
0
1
2
3
2
0
1
0
2
1
0
0
1
1
2
0
0
1
0
2
2
0
1
0
0
0
2
2
1
1
0
2
2
2
1
0
2
0
1
2
0
1
0
1
2
2
1
0
1
0
0
0
2
0
1
1
1
0
2
1
1
2
2
0
1
1
1
0
2
1
0
2
0
0
0
0
0
0
1
0
1
0
0
0
2
1
1
0
1
3
1
1
0
0
1
0
1
1
0
1
2
1
1
2
1
0
0
1
1
0
1
1
0
1
0
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 28 58 57
? 54 58 57
? 65 54 61
? 57 58 61
? 28 58 61
? 65 57 61
? 54 61 90
? 65 57 90
? 58 28 90
? 58 54 90
? 28 54 90
? 57 54 38
? 90 28 38
? 58 61 38
? 65 61 38
? 57 90 38
? 28 58 27
? 38 61 27
? 65 90 27
? 57 54 27
? 28 38 27
? 38 90 35
? 5...

result:

points 1.0 points  1.0 correct 3093 queries

Test #8:

score: 100
Accepted
time: 8ms
memory: 3968kb

input:

0
0
0
1
0
1
0
2
1
0
0
2
0
0
1
1
1
1
1
1
0
0
0
0
1
1
0
1
2
2
1
1
0
0
1
0
0
0
1
1
1
1
0
2
1
1
1
0
0
1
1
1
1
0
0
2
1
0
0
0
1
1
0
1
1
0
0
0
2
0
1
0
1
0
0
1
0
1
0
1
1
1
1
2
0
0
1
1
2
0
0
1
0
0
0
0
0
2
2
1
1
1
0
0
2
0
1
1
1
0
2
0
1
1
0
0
2
1
1
1
2
1
1
2
1
1
2
1
2
0
0
1
1
0
0
1
1
3
2
1
1
1
1
0
1
2
2
1
0
1
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 28 58 57
? 58 54 61
? 28 57 61
? 65 57 61
? 28 65 61
? 65 28 90
? 57 61 90
? 58 54 90
? 57 65 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 57 28 38
? 58 28 27
? 90 54 27
? 65 61 27
? 57 38 27
? 58 90 27
? 90 27 35
? 28 61 35
? 57 58 35
? 5...

result:

points 1.0 points  1.0 correct 3280 queries

Test #9:

score: 100
Accepted
time: 7ms
memory: 3968kb

input:

3
3
3
3
1
3
2
0
2
0
3
0
2
0
0
1
2
2
2
3
2
3
3
2
3
3
3
2
2
0
2
3
2
2
0
3
2
2
2
0
3
1
0
1
1
1
1
3
3
3
3
2
2
3
0
2
0
2
2
2
0
3
2
3
1
1
1
0
1
1
1
0
2
3
3
3
2
3
1
2
2
1
1
0
1
0
0
1
0
0
0
2
3
2
0
0
2
0
0
2
2
3
3
2
0
1
1
0
0
2
0
2
0
3
3
0
0
2
1
1
3
3
1
0
0
1
0
1
0
2
2
2
2
1
0
1
3
3
2
0
0
0
2
2
0
2
2
0
1
0
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 65 57 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 28 57 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 65 27 35
? 58 54 35
? 57 90 35
? 38 28 35
? 61 28 35
? 35 58 75
? 6...

result:

points 1.0 points  1.0 correct 3021 queries

Test #10:

score: 100
Accepted
time: 4ms
memory: 3840kb

input:

2
2
0
2
2
2
2
2
2
2
2
0
2
2
0
2
2
0
2
2
2
0
0
2
2
0
0
2
2
0
2
0
2
2
2
2
2
0
2
0
2
2
0
2
2
2
2
0
2
2
2
2
2
2
2
0
2
2
2
2
2
2
2
2
2
0
2
2
2
2
2
2
2
0
2
0
2
2
2
2
2
2
0
2
2
0
2
2
2
2
0
0
2
2
0
2
2
2
2
2
2
2
2
2
2
0
0
0
0
2
0
2
2
2
2
0
2
2
2
2
0
2
2
2
2
0
2
2
2
2
2
2
0
0
2
0
2
2
2
2
2
2
0
2
0
2
2
2
0
2
...

output:

? 28 65 58
? 46 64 54
? 96 88 93
? 93 96 35
? 88 96 35
? 88 93 9
? 96 35 9
? 96 88 9
? 35 93 29
? 9 88 29
? 96 88 29
? 35 9 29
? 9 35 95
? 29 88 95
? 93 96 95
? 29 9 95
? 29 96 78
? 88 93 78
? 35 9 78
? 95 9 78
? 29 88 78
? 95 88 60
? 96 78 60
? 35 29 60
? 93 9 60
? 93 95 60
? 88 96 72
? 93 29 72
? ...

result:

points 1.0 points  1.0 correct 3325 queries

Test #11:

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

input:

0
1
1
2
2
1
2
2
2
1
1
2
0
1
1
1
2
1
1
2
0
2
2
0
1
3
3
1
1
1
1
0
0
1
3
0
1
1
2
0
1
2
2
1
1
1
1
0
1
1
1
0
2
0
1
3
3
1
2
1
1
1
2
2
1
2
2
1
0
2
1
0
2
2
1
3
3
2
1
1
0
2
2
2
1
2
0
1
1
2
3
1
1
2
2
1
1
2
0
0
3
0
3
3
0
1
2
1
2
1
1
2
2
0
2
1
2
1
2
2
0
0
1
1
1
3
1
0
1
2
2
0
1
3
1
1
2
1
2
2
1
2
1
2
1
1
2
1
1
2
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 58 28 54
? 28 54 57
? 58 65 57
? 28 58 57
? 65 54 61
? 57 58 61
? 28 58 61
? 57 28 61
? 54 61 90
? 65 57 90
? 58 28 90
? 58 54 90
? 57 54 38
? 90 28 38
? 58 61 38
? 65 61 38
? 28 57 38
? 90 57 38
? 61 65 27
? 57 58 27
? 38 90 27
? 28 54 27
? 61 58 27
? 61 65 35
? 5...

result:

points 1.0 points  1.0 correct 3353 queries

Test #12:

score: 100
Accepted
time: 8ms
memory: 3968kb

input:

2
3
3
3
2
2
2
3
2
1
1
1
2
1
2
1
1
3
1
2
0
2
2
2
1
3
1
1
2
1
2
2
2
2
2
1
2
2
3
2
3
3
0
1
2
2
1
2
1
3
2
3
3
2
0
2
2
2
2
1
1
2
2
3
2
2
2
3
2
3
2
0
2
1
2
1
1
1
0
1
3
0
1
1
3
2
1
2
2
3
1
2
2
0
3
0
2
2
0
2
2
0
2
2
3
1
3
2
2
0
1
2
3
3
3
2
3
2
1
2
2
2
1
1
1
0
2
2
0
1
3
2
2
2
2
2
2
3
1
3
1
1
2
0
0
3
2
1
1
1
...

output:

? 28 65 58
? 46 64 54
? 54 64 99
? 46 64 99
? 64 99 93
? 54 46 93
? 99 54 93
? 64 54 93
? 54 64 66
? 46 93 66
? 99 93 66
? 99 64 66
? 54 46 11
? 99 93 11
? 64 66 11
? 93 46 11
? 99 46 11
? 93 54 55
? 99 66 55
? 64 11 55
? 46 11 55
? 99 93 55
? 64 99 39
? 93 11 39
? 46 55 39
? 66 54 39
? 55 11 39
? 4...

result:

points 1.0 points  1.0 correct 3344 queries

Test #13:

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

input:

2
1
2
1
1
2
1
2
3
2
1
2
2
2
1
1
2
0
1
1
1
1
1
2
1
1
0
1
3
2
1
1
1
2
2
1
1
2
1
3
1
1
2
0
2
2
3
1
2
1
2
3
1
1
1
2
1
2
1
3
1
1
2
2
3
3
2
1
2
2
2
0
2
2
3
2
2
0
1
2
1
2
1
2
0
1
2
1
0
1
2
2
2
1
3
2
1
1
1
1
2
3
1
0
3
2
2
2
2
2
2
0
2
2
2
0
1
2
2
0
1
3
2
1
1
1
2
1
1
2
2
1
3
2
2
1
1
1
1
0
1
2
0
1
0
1
2
3
0
2
...

output:

? 28 65 58
? 46 64 54
? 96 88 93
? 31 20 69
? 31 39 13
? 10 96 12
? 33 60 28
? 14 22 6
? 53 70 28
? 53 70 92
? 28 70 92
? 92 53 3
? 28 70 3
? 70 92 3
? 70 53 29
? 28 92 29
? 3 92 29
? 28 3 29
? 70 29 18
? 92 28 18
? 53 3 18
? 28 53 18
? 70 92 18
? 3 18 90
? 70 29 90
? 53 92 90
? 28 92 90
? 3 29 90
?...

result:

points 1.0 points  1.0 correct 3354 queries

Test #14:

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

input:

2
2
1
2
2
3
3
3
2
2
2
3
1
1
2
3
0
2
3
2
2
3
1
1
3
1
1
2
2
1
1
1
2
1
0
2
2
2
3
2
1
2
1
2
1
2
2
3
0
2
3
2
3
1
2
2
1
2
1
1
1
1
0
2
1
0
1
1
2
2
2
3
1
2
2
3
2
1
3
3
2
0
2
2
3
1
3
1
1
2
2
1
2
2
2
0
2
2
2
0
2
3
2
2
1
1
2
2
2
0
1
1
3
3
0
1
2
1
1
3
1
1
1
1
3
2
3
1
3
1
1
1
1
2
2
1
1
3
1
1
0
1
1
2
0
2
0
2
2
2
...

output:

? 28 65 58
? 46 64 54
? 96 88 93
? 31 20 69
? 31 39 13
? 10 96 12
? 12 10 32
? 96 10 32
? 12 10 82
? 32 96 82
? 96 10 82
? 32 10 82
? 96 10 88
? 12 82 88
? 32 82 88
? 12 32 88
? 10 88 89
? 12 96 89
? 32 82 89
? 12 10 89
? 10 32 80
? 82 89 80
? 88 12 80
? 96 12 80
? 10 82 80
? 96 80 43
? 88 32 43
? 1...

result:

points 1.0 points  1.0 correct 3356 queries

Test #15:

score: 100
Accepted
time: 5ms
memory: 3968kb

input:

2
2
2
2
2
2
0
2
2
2
1
0
1
2
2
2
2
2
1
1
1
2
3
1
1
2
2
3
0
1
2
2
1
1
1
2
0
1
3
1
1
2
0
0
2
2
3
1
2
3
2
0
3
2
3
2
2
3
0
0
3
2
2
2
2
1
2
1
3
3
2
2
1
1
1
0
2
3
2
2
3
2
1
2
1
3
3
1
1
2
1
3
2
1
1
2
2
0
2
1
2
2
0
2
3
3
2
1
2
1
0
2
3
2
0
1
2
1
1
1
2
0
1
2
2
1
2
1
3
2
1
2
2
3
2
2
1
3
2
2
1
2
2
2
2
3
2
0
2
2
...

output:

? 28 65 58
? 46 64 54
? 96 88 93
? 31 20 69
? 31 39 13
? 10 96 12
? 33 60 28
? 60 28 87
? 33 28 87
? 87 33 91
? 28 60 91
? 33 28 91
? 87 91 74
? 60 33 74
? 28 33 74
? 28 33 96
? 60 87 96
? 74 91 96
? 60 28 96
? 91 33 62
? 96 28 62
? 87 60 62
? 74 60 62
? 91 96 62
? 28 60 63
? 96 91 63
? 33 87 63
? 7...

result:

points 1.0 points  1.0 correct 3313 queries

Test #16:

score: 100
Accepted
time: 4ms
memory: 3968kb

input:

2
2
1
3
3
2
1
1
3
2
0
2
1
2
1
1
2
1
1
1
0
0
2
2
1
1
2
2
2
2
3
0
0
1
2
2
2
1
1
1
1
1
2
2
1
3
1
2
1
1
2
0
3
0
2
1
2
3
1
1
0
2
2
1
1
0
0
3
3
1
2
1
1
2
2
1
2
1
3
1
1
2
2
2
1
3
1
3
2
3
1
0
3
1
3
2
3
1
1
3
1
0
2
0
3
3
1
1
0
1
2
3
0
2
1
1
3
2
2
2
2
0
1
1
2
1
1
1
2
1
1
2
1
1
1
3
2
2
1
1
1
1
2
2
1
0
1
1
3
2
...

output:

? 28 65 58
? 46 64 54
? 96 88 93
? 31 20 69
? 31 69 91
? 20 69 91
? 20 69 39
? 31 91 39
? 20 31 96
? 91 69 96
? 39 69 96
? 96 20 3
? 39 69 3
? 91 31 3
? 69 31 3
? 96 39 3
? 20 91 34
? 3 39 34
? 96 31 34
? 69 31 34
? 31 34 48
? 91 39 48
? 3 20 48
? 69 96 48
? 3 31 48
? 31 34 83
? 20 96 83
? 69 48 83
...

result:

points 1.0 points  1.0 correct 3336 queries

Test #17:

score: 100
Accepted
time: 3ms
memory: 3968kb

input:

1
2
1
2
2
1
1
3
1
2
2
2
3
0
3
3
2
3
2
2
3
1
2
2
2
0
2
3
1
2
2
0
1
2
1
1
1
2
2
0
2
2
1
1
2
1
1
0
2
2
1
1
3
1
0
1
1
2
2
1
2
1
2
1
1
1
1
3
1
0
1
1
1
3
1
1
1
1
3
2
1
0
3
2
2
2
1
2
1
3
1
2
1
2
2
0
2
0
1
2
1
2
0
2
1
0
2
2
2
0
2
0
1
1
1
3
1
2
1
2
2
2
2
1
0
3
1
2
3
1
1
0
1
3
2
2
2
2
2
0
2
2
1
1
1
1
3
1
1
0
...

output:

? 28 65 58
? 46 64 54
? 96 88 93
? 31 20 69
? 31 39 13
? 10 96 12
? 33 60 28
? 14 22 6
? 22 6 29
? 14 6 29
? 29 6 31
? 14 22 31
? 14 29 31
? 29 22 7
? 31 6 7
? 14 6 7
? 31 22 13
? 14 29 13
? 7 6 13
? 7 31 13
? 6 31 40
? 13 29 40
? 22 14 40
? 7 14 40
? 22 7 40
? 29 40 93
? 14 7 93
? 13 22 93
? 6 31 9...

result:

points 1.0 points  1.0 correct 3333 queries

Test #18:

score: 100
Accepted
time: 2ms
memory: 3968kb

input:

0
2
1
2
1
2
2
2
1
1
2
2
2
0
2
2
2
3
2
2
0
2
3
1
3
2
1
1
1
1
1
0
2
1
2
1
2
0
1
1
1
2
0
1
3
2
1
2
0
1
3
2
1
0
1
1
3
1
2
1
2
2
3
1
2
2
1
3
0
1
2
2
2
0
1
0
1
2
1
1
2
2
1
3
2
0
3
1
1
2
0
2
3
2
1
2
1
2
3
2
1
2
2
2
1
1
2
0
1
2
1
2
1
1
0
1
1
1
2
1
2
0
1
1
1
2
1
1
2
1
3
2
2
1
2
1
1
1
1
2
1
1
2
1
2
3
1
2
1
1
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 28 57
? 58 54 61
? 28 57 61
? 65 57 61
? 58 28 61
? 54 28 61
? 54 61 90
? 58 28 90
? 57 65 90
? 54 58 90
? 57 58 38
? 90 28 38
? 65 61 38
? 54 61 38
? 28 57 38
? 90 57 38
? 28 65 27
? 38 61 27
? 54 90 27
? 57 58 27
? 54 28 27
? 38 90 35
? 5...

result:

points 1.0 points  1.0 correct 3324 queries

Test #19:

score: 100
Accepted
time: 4ms
memory: 3968kb

input:

3
2
1
2
2
2
3
2
3
2
1
1
1
0
2
2
2
1
2
1
1
2
2
3
1
2
2
1
1
3
0
0
1
2
2
3
1
2
1
1
0
1
2
1
1
1
3
1
0
0
1
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
3
1
2
0
1
1
2
1
2
2
2
2
1
0
2
3
1
1
3
1
0
1
2
2
1
2
3
2
1
2
2
1
1
0
2
3
2
1
2
0
2
1
3
1
1
1
2
2
2
2
2
0
2
1
2
0
1
2
1
0
1
1
1
3
2
3
1
1
2
0
2
1
2
2
0
2
2
2
2
3
2
3
2
2
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 28 54 57
? 58 65 57
? 58 28 57
? 58 54 61
? 28 57 61
? 65 57 61
? 65 28 90
? 57 61 90
? 58 54 90
? 65 57 90
? 28 54 38
? 57 65 38
? 90 61 38
? 58 61 38
? 57 28 38
? 54 38 27
? 57 58 27
? 61 28 27
? 90 65 27
? 28 57 27
? 61 57 27
? 57 27 35
? 38 28 35
? 90 54 35
? 5...

result:

points 1.0 points  1.0 correct 3334 queries

Test #20:

score: 100
Accepted
time: 7ms
memory: 3968kb

input:

0
1
1
2
3
0
2
2
1
1
1
1
1
1
1
2
1
3
2
2
2
1
3
3
1
1
2
2
3
1
2
2
0
0
1
1
2
0
1
2
2
1
3
2
2
3
2
1
2
1
2
2
2
1
2
3
0
2
1
3
0
1
2
2
1
1
2
1
3
0
2
1
1
1
1
2
1
1
1
0
1
0
2
0
2
1
1
2
2
3
0
2
1
1
3
0
3
0
0
3
2
2
0
1
1
1
2
0
2
2
0
3
2
1
1
2
3
1
3
1
2
2
2
1
2
1
1
1
0
0
2
2
2
1
2
1
2
3
0
0
2
2
3
1
2
3
2
2
1
1
...

output:

? 28 65 58
? 58 65 54
? 28 65 54
? 58 28 54
? 28 54 57
? 58 65 57
? 58 54 61
? 28 57 61
? 65 57 61
? 58 28 61
? 54 28 61
? 54 61 90
? 58 28 90
? 57 65 90
? 58 57 90
? 61 28 90
? 57 65 38
? 61 58 38
? 28 54 38
? 90 54 38
? 57 61 38
? 54 90 27
? 57 28 27
? 38 61 27
? 58 65 27
? 54 65 27
? 90 65 27
? 5...

result:

points 1.0 points  1.0 correct 3341 queries