Submission #1232405

#TimeUsernameProblemLanguageResultExecution timeMemory
1232405LeonidCukSphinx's Riddle (IOI24_sphinx)C++17
18 / 100
4 ms412 KiB
#include "sphinx.h"
#include <bits/stdc++.h>
using namespace std;
int n;
vector<int>dsu;
int vfind(int a)
{
  if(dsu[a]==a)return a;
  return dsu[a]=vfind(dsu[a]);
}
vector<int> find_colours(int N,vector<int> X,vector<int> Y) {
  n=N;
  vector<int>res(n);
  vector<int>temp(n,n);
  dsu.resize(n);
  for(int i=0;i<n;i++)dsu[i]=i;
  for(int i=1;i<n;i++)
  {
      temp[i]=-1;
      temp[i-1]=-1;
      int k=perform_experiment(temp);
      int a=0;
      if(i!=1)a++;
      if(i!=n-1)a++;
      if(k==a+1)
      {
        int a1=vfind(i),b1=vfind(i-1);
        dsu[a1]=b1;
      }
      temp[i]=n;
      temp[i-1]=n;
  }
  for(int i=0;i<n;i++)
  {
    res[i]=vfind(i);
  }
  return res;
}
#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...