Submission #373499

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
3734992021-03-04 21:33:02Matteo_VerzConnecting Supertrees (IOI20_supertrees)C++17
100 / 100
273 ms24300 KiB
#include "supertrees.h"
#include <bits/stdc++.h>
using namespace std;
vector <vector <int>> answer;
vector <int> viz;
vector <int> countroot;
vector <int> roots;
bitset <1001> isroot;
bool ok = true;
void Solve_Component(int node, vector <vector <int>> &p, int comp) {
int n = p.size();
vector <int> realnodes;
for(int i = 0; i < n; i++)
if(p[node][i] > 0 || i == node) {
viz[i] = comp; // mark each node as part of the component
realnodes.push_back(i); // we keep a vector with only the nodes in the component
}
for(int i : realnodes) {
for(int j = 0; j < n; j++)
if(p[i][j] == 0 && p[node][j] != 0) { // if there is path from i to j, from j to k, but not from i to k
ok = false;
return;
} else if(p[i][j] != 0 && p[node][j] == 0) { // same shit
ok = false;
return;
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

supertrees.cpp: In function 'void Solve_Component(int, std::vector<std::vector<int> >&, int)':
supertrees.cpp:38:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   38 |   for(int i = 0; i < realnodes.size(); i++) { // we go through each node
      |                  ~~^~~~~~~~~~~~~~~~~~
supertrees.cpp:47:28: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   47 |       for(int j = i + 1; j < realnodes.size(); j++) {
      |                          ~~^~~~~~~~~~~~~~~~~~
supertrees.cpp:65:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   65 |   for(int i = 0; i < roots.size() - 1; 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...
#Verdict Execution timeMemoryGrader output
Fetching results...