제출 #1312351

#제출 시각아이디문제언어결과실행 시간메모리
1312351eri16스핑크스 (IOI24_sphinx)C++20
24 / 100
31 ms648 KiB
#include <bits/stdc++.h>
#include "sphinx.h"
using namespace std;
/*
int perform_experiment(vector <int> v){
    for (auto x : v){cout<<x<<" ";}cout<<"\n";
    int z;
    cin>>z;
    return z;
}
*/

vector<int> find_colours(int N, vector<int> X, vector<int> Y){
    int n = N;
    vector <int> ans(n,0);

    for (int i=0; i<n; i++){
        
        int l = 0;
        int r = n-1;
        
        while (l<r){
            int mid = (l+r)/2;
            
            //cout<<l<<' '<<r<<"\n";
            
            vector <int> tm (n,n);    

            int cnt = l;

            for (int j=0; j<n; j++){
                if (i==j){tm[j]=-1;}
                else{
                    if (cnt<=mid){
                        tm[j]=cnt;
                    }
                    cnt++;                    
                }
            }
            
            //cout<<l<<' '<<mid<<' '<<r<<"\n";
            
            int found = perform_experiment(tm);
            
            if (l==0 && mid+2==n){
                if (found != mid - l + 1){l = mid + 1;}
                else{r = mid;}                
            }
            else{
                if (found != mid - l + 2){l = mid + 1;}
                else{r = mid;}
            }
        }
        ans[i]=l;
        //cout<<"answer to id "<<i<<" was color "<<l<<"\n";
    }
    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...