Submission #464187

#TimeUsernameProblemLanguageResultExecution timeMemory
464187koioi.org-dennisstarChameleon's Love (JOI20_chameleon)C++17
0 / 100
1 ms328 KiB
#include "chameleon.h"
#include <bits/stdc++.h>

using namespace std;

void Solve(int n) {
	vector<vector<int>> adj(2*n);
	for (int i=1; i<2*n; i++) for (int j=i+1; j<=2*n; j++) {
		vector<int> v(2);
		v[0]=i, v[1]=j;
		if (Query(v)==1) adj[i].emplace_back(j), adj[j].emplace_back(i);
	}
	auto chk = [&](int x, int y) {
		if (adj[x].size()==1||adj[y].size()==1) return true;
		int f1=0, f2=0;
		vector<int> v(3);
		v[0]=x, v[1]=y;
		for (auto &i:adj[x]) if (i!=y) {
			v[2]=i;
			if (Query(v)==1) { f1=1; break; }
		}
		for (auto &i:adj[y]) if (i!=x) {
			v[2]=i;
			if (Query(v)==1) { f2=1; break; }
		}
		return f1&&f2;
	};
	for (int i=1; i<=2*n; i++) for (auto &j:adj[i]) if (chk(i, j)) {
		Answer(i, j);
		adj[j].clear();
		break;
	}
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...