Submission #1199801

#TimeUsernameProblemLanguageResultExecution timeMemory
1199801omarrrrMinerals (JOI19_minerals)C++20
25 / 100
9 ms2000 KiB
#include "minerals.h"
#include<bits/stdc++.h>
#define ll long long
#define pb push_back

using namespace std;

ll n;

void merge(vector<ll>a,vector<ll>b){

    vector<ll>c,d,x,y;
    ll p=0;
    for(ll i=0;i<a.size()/2;i++){
        c.pb(a[i]);
        p=Query(a[i]);
    }
    for(ll i=a.size()/2;i<a.size();i++){
        x.pb(a[i]);
    }
    for(ll i=0;i<b.size();i++){
        if(Query(b[i])==p){
            d.pb(b[i]);
        }else{
            y.pb(b[i]);
        }
        Query(b[i]);
    }
    for(ll i=0;i<a.size()/2;i++){
        p=Query(a[i]);
    }
    if(c.size()>1){
        merge(c,d);
    }else if(c.size()==1){
        Answer(c[0],d[0]);
    }

    if(x.size()>1){
        merge(x,y);
    }else if(x.size()==1){
        Answer(x[0],y[0]);
    }
    return;


}

void Solve(int N) {
    vector<ll>a,b;

    ll n=N;
    for(ll i=1;i<=n;i++){
        a.pb(i);
        b.pb(n+i);
    }
    merge(a,b);
    return;
}
#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...