Submission #889411

#TimeUsernameProblemLanguageResultExecution timeMemory
889411vjudge1Split the Attractions (IOI19_split)C++17
11 / 100
60 ms15184 KiB
#include "split.h" #include <bits/stdc++.h> using namespace std; using vi = vector<int>; vector<int> find_split(int n, int a, int b, int c, vector<int> p, vector<int> q) { vi re(n, 0); vector<vi> L(n); for(int i = 0; i < p.size(); ++i) { L[p[i]].push_back(q[i]); L[q[i]].push_back(p[i]); } if(a == 1) { vi viz(n, 0); int nrb = 0; function<void(int)> dfs = [&](int u) { viz[u] = 1; if(nrb < b) { re[u] = 2; ++nrb; } for(auto it : L[u]) { if(!viz[it]) dfs(it); } }; dfs(0); for(auto &it : re) { if(!it && a) { it = 1; --a; } if(!it) it = 3; } return re; } // if(p.size() == n - 1) { // vi sz(n, 0), dpa(n, 0); // function<void(int, int)> dfs = [&](int u, int p) { // }; // } return re; }

Compilation message (stderr)

split.cpp: In function 'std::vector<int> find_split(int, int, int, int, std::vector<int>, std::vector<int>)':
split.cpp:11:22: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |     for(int i = 0; i < p.size(); ++i) {
      |                    ~~^~~~~~~~~~
#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...