Submission #1353673

#TimeUsernameProblemLanguageResultExecution timeMemory
1353673muhammad-ahmadMinerals (JOI19_minerals)C++20
0 / 100
0 ms348 KiB
#include "minerals.h"
#include <bits/stdc++.h>
using namespace std;

void solve(vector<int> A, vector<int> B){
	if (A.empty()) return;
	if (A.size() == 1){
		Answer(A[0], B[0]);
	}
	int mid = A.size() / 2;
	vector<int> A1(A.begin(), A.begin() + mid), A2(A.begin() + mid, A.end());
	vector<int> B1, B2;
	int bef = 0;
	for (auto i : A1){
		bef = Query(i);
	}
	for (auto i : B){
		int now = Query(i);
		if (now == bef) B1.push_back(i);
		else B2.push_back(i);
		Query(i);
	}
	
	for (auto i : A1) Query(i);
	solve(A1, B1);
	solve(A2, B2);
}

void Solve(int N){
	vector<int> A, B;
	for (int i = 1; i <= N; i++){
		A.push_back(i);
		B.push_back(i + N);
	}
	solve(A, B);
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...