#include "dango3.h"
#include<bits/stdc++.h>
using namespace std;
#define task "a"
#define se second
#define fi first
#define ll long long
#define ii pair<ll, ll>
const long mxN = 1e4 + 7;
int n, m;
vector<int> ans[30];
int Binary(int mid, int j)
{
vector<int> ask;
for (int i = j + 1; i <= n * m; i++)
ask.push_back(i);
for (int i = mid + 1; i <= m; i++)
{
for (int u : ans[i])
ask.push_back(u);
}
return Query(ask);
}
void Solve(int N, int M)
{
n = N;
m = M;
for (int i = 1; i <= n * m; i++)
{
int l = 1, r = m, res = m;
while (l <= r)
{
int mid = (l + r) / 2;
if (Binary(mid, i) < m - mid)
l = mid + 1;
else
{
res = mid;
r = mid - 1;
}
}
ans[res].push_back(i);
}
for (int i = 1; i <= m; i++)
Answer(ans[i]);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |