Submission #463717

#TimeUsernameProblemLanguageResultExecution timeMemory
463717oscar1fHighway Tolls (IOI18_highway)C++17
0 / 100
25 ms684 KiB
#include<bits/stdc++.h>
#include "highway.h"
using namespace std;

//#define int long long

const int MAX_SOM=90*1000;
int nbSom,bas,haut,nbAre,petit,grand,mid;
long long rep,distTotal;
vector<int> quest;

void find_pair(int N,vector<int> U,vector<int> V,int A,int B) {
  nbAre=U.size();
  nbSom=N;
  bas=A;
  haut=B;
  for (int i=0;i<nbAre;i++) {
    quest.push_back(0);
  }
  distTotal=ask(quest);
  petit=0;
  grand=nbAre-distTotal;
  while(petit!=grand) {
    mid=(petit+grand)/2;
    for (int i=petit;i<=mid;i++) {
      quest[i]=1;
    }
    rep=ask(quest);
    for (int i=petit;i<=mid;i++) {
      quest[i]=0;
    }
    if (rep>distTotal) {
      grand=mid;
    }
    else {
      petit=mid+1;
    }
  }
  answer(petit,petit+distTotal);
}
#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...