Submission #615437

# Submission time Handle Problem Language Result Execution time Memory
615437 2022-07-31T09:11:07 Z valerikk Minerals (JOI19_minerals) C++17
0 / 100
1 ms 336 KB
#include "minerals.h"
#include <bits/stdc++.h>
using namespace std;
 
mt19937 gen(239);
 
int diff;
 
int query(int x) {
	return diff = Query(x);
}
 
void solve(vector<int> a, vector<int> b) {
	assert(a.size() == b.size());
	if (a.size() == 1) {
		Answer(a[0], b[0]);
		return;
	}
	shuffle(begin(a), end(a), gen);
	shuffle(begin(b), end(b), gen);
	int n = a.size();
	vector<int> al, ar, bl, br;
	for (int i = 0; i < n / 2; ++i) {
		query(a[i]);
		al.push_back(a[i]);
	}
	for (int i = n / 2; i < n; ++i) {
		ar.push_back(a[i]);
	}
	for (int i = 0; i < n; ++i) {
		int old_diff = diff;
		if (query(b[i]) > old_diff) {
			bl.push_back(b[i]);
		} else {
			query(b[i]);
			br.push_back(b[i]);
		}
		if (bl.size() == al.size()) {
			for (int j = i + 1; j < n; ++j) {
				br.push_back(j);
			}
			break;
		}
	}
	solve(bl, al);
	solve(ar, br);
}
 
void Solve(int N) {
	vector<int> a, b;
	for (int i = 1; i <= 2 * N; ++i) {
		int old_diff = diff;
		if (query(i) > old_diff) {
			a.push_back(i);
		} else {
			query(i);
			b.push_back(i);
		}
	}
	solve(a, b);
}	
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 336 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 208 KB Wrong Answer [5]
2 Halted 0 ms 0 KB -