Submission #1225607

#TimeUsernameProblemLanguageResultExecution timeMemory
1225607PagodePaivaSphinx's Riddle (IOI24_sphinx)C++20
10 / 100
42 ms1188 KiB
#include "sphinx.h" #include<bits/stdc++.h> using namespace std; const int N = 256; int cor[N]; vector <int> g[N]; int mark[N]; void dfs(int v){ mark[v] = 1; for(auto x : g[v]){ if(mark[x]) continue; dfs(x); } } std::vector<int> find_colours(int n, std::vector<int> X, std::vector<int> Y) { for(int i = 0;i < X.size();i++){ g[X[i]].push_back(Y[i]); g[Y[i]].push_back(X[i]); } for(int i = 0;i < n;i++){ int v = i, x = g[i][0]; vector <int> qr; for(int i = 0;i < n;i++){ qr.push_back(n); } qr[v] = -1; memset(mark, 0, sizeof mark); mark[v] = 1; mark[x] = 1; int comp = 0; for(int j = 0;j < n;j++){ if(mark[j] == 0){ comp++; dfs(j); } } for(int j = 0;j < n;j++){ qr[x] = j; int check = perform_experiment(qr); if(check != comp + 2){ cor[v] = j; break; } } } vector <int> ans; for(int i = 0;i < n;i++){ ans.push_back(cor[i]); } 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...