#include "dango3.h"
#include<bits/stdc++.h>
#define ll int
#define nl "\n"
#define all(v) v.begin(),v.end()
#define baraa ios_base::sync_with_stdio(false);cin.tie(NULL);
using namespace std;
namespace {
int variable_example = 1;
}
vector<ll> del(vector<ll> x, ll num) {
vector<ll> x2;
for (ll i = 0; i < x.size(); i++) {
if (x[i] != num)x2.push_back(x[i]);
}
return x2;
}
void answer(vector<ll> x) {
for (auto &i: x)i++;
Answer(x);
}
ll query(vector<ll> x) {
for (auto &i: x)i++;
return Query(x);
}
void Solve(int n, int m) {
// std::vector<int> x(3);
// x[0] = 1;
// x[1] = 2;
// x[2] = 3;
// variable_example = Query(x);
// for (int i = 0; i < M; i++) {
// std::vector<int> a(N);
// for (int j = 0; j < N; j++) {
// a[j] = N * i + j + 1;
// }
// Answer(a);
// }
vector<ll> rem;
for (ll i = 0; i < n * m; i++)rem.push_back(i);
while (rem.size()) {
ll sz = rem.size(), l = 0, r = sz - 1, ans = -1, ans2 = -1;
while (l <= r) {
ll mid = (l + r) / 2;
vector<ll> x;
for (ll i = 0; i <= mid; i++)x.push_back(rem[i]);
ll res = query(x);
if (res >= 1)r = mid - 1, ans = mid;
else l = mid + 1;
}
vector<ll> final;
for (ll i = ans; i >= 0; i--)final.push_back(rem[i]);
while (final.size() != n) {
sz = final.size();
for (ll i = 0; i < sz; i++)
if (query(del(final, final[i])) >= 1) {
// cout << final[i] << nl;
final = del(final, final[i]);
sz--;
i--;
}
}
// for (ll i: final)cout << i << ' ';
// cout << nl;
answer(final);
for (ll i: final)rem = del(rem, 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... |