제출 #1146731

#제출 시각아이디문제언어결과실행 시간메모리
1146731SpyrosAliv스핑크스 (IOI24_sphinx)C++20
0 / 100
0 ms412 KiB
#include <bits/stdc++.h> using namespace std; int n; vector<vector<int>> g; int perform_experiment(vector<int> E); bool sim(int a, int b) { // checks if two adj nodes share color vector<int> qr(n, n); qr[a] = qr[b] = -1; int cnt = perform_experiment(qr); if (cnt == 3) return false; if (g[a].size() == 1 && g[b].size() == 1) { if (cnt == 1) return true; else return false; } return true; } vector<int> solve3() { int comps = 0; vector<int> q; vector<int> cols(n); int currCol = 0; for (int i = 0; i < n; i++) { cols[i] = currCol; if (i == n-1) break; if (sim(i, i+1)) continue; else currCol++; } return cols; } vector<int> solve12() { return {-1}; } vector<int> find_colours(int N, vector<int> X, vector<int> Y) { n = N; bool line = true; g.resize(n+1); for (int i = 0; i < n; i++) { g[X[i]].push_back(Y[i]); g[Y[i]].push_back(X[i]); if (min(X[i], Y[i]) != max(X[i], Y[i]) - 1) line = false; } if (n <= 50 && !line) return solve12(); else if (line) solve3(); return {-1}; }
#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...