제출 #1169951

#제출 시각아이디문제언어결과실행 시간메모리
1169951Szymon_PilipczukMinerals (JOI19_minerals)C++20
0 / 100
0 ms496 KiB
#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;
    }
    for(int i = 0;i<l.size()/2;i++)
    {
        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 = 0;
    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++)
    {
        Query(l[i]);
    }
    for(int i = 0;i<r.size();i++)
    {
        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++)
    {
        Query(i+1);
    }
    solve(l,r);

}
#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...