Submission #1232524

#TimeUsernameProblemLanguageResultExecution timeMemory
1232524VMaksimoski008Sphinx's Riddle (IOI24_sphinx)C++20
0 / 100
0 ms412 KiB
#include "sphinx.h"
#include <bits/stdc++.h>
using namespace std;

vector<int> find_colours(int n, vector<int> X, vector<int> Y) {
    vector<int> ans(n);
    for(int i=0; i<n; i++) ans[i] = i;

    vector<int> cnt(n); cnt[0] = 1;
    for(int u=0; u<n; u++) {
      int l=0, r=n-2;
      while(l <= r) {
        int mid = (l + r) / 2;
        vector<int> E(n, n); E[u] = -1;

        for(int i=0; i<n; i++) {
          if(i <= mid && i != u) E[i] = i;
        }

        int need = (u == n-1 && mid == u-1 ? 0 : 1) + mid;

        if(perform_experiment(E) <= need) ans[u] = mid, r = mid - 1;
        else l = mid + 1;
      }

      vector<int> E(n, n-1); E[u] = -1;
      if(perform_experiment(E) == 1) ans[u] = n-1;
    }

    return ans;
}
#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...