#include "minerals.h"
#include <bits/stdc++.h>
using namespace std;
void solve(vector<int> l,vector<int> r)
{
vector<int> l1;
vector<int > l2;
vector<int > r1;
vector<int> r2;
if(l.size() == 1)
{
Answer(l[0],r[0]);
return;
}
int a;
for(int i = 0;i<l.size()/2;i++)
{
a = Query(l[i]);
l1.push_back(l[i]);
}
for(int i = l.size()/2;i<l.size();i++)
{
l2.push_back(l[i]);
}
int p = a;
for(int i = 0;i<r.size();i++)
{
int cu =Query(r[i]);
if(cu > p)
{
r2.push_back(r[i]);
p = cu;
}
else
{
r1.push_back(r[i]);
}
}
for(int i =0 ;i<l.size()/2;i++)
{
int a =Query(l[i]);
}
for(int i = 0;i<r.size();i++)
{
int a =Query(r[i]);
}
solve(l1,r1);
solve(l2,r2);
}
void Solve(int n)
{
vector<int> l;
vector<int> r;
int p = 0;
for(int i = 0;i<n*2;i++)
{
int cu = Query(i+1);
if(cu > p)
{
p = cu;
l.push_back(i+1);
}
else
{
r.push_back(i+1);
}
}
for(int i =0;i<n*2;i++)
{
int a = Query(i+1);
}
solve(l,r);
}
# | 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... |
# | 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... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |