Submission #961649

# Submission time Handle Problem Language Result Execution time Memory
961649 2024-04-12T09:34:01 Z Gr1sen Connecting Supertrees (IOI20_supertrees) C++17
0 / 100
1 ms 348 KB
#include"supertrees.h"
#include<iostream>
#include<vector>
#include<algorithm>
#include<iomanip>

using namespace std;

#define vi vector<int>
#define vvi vector<vi>

vvi L;

vi F;

int find(int a) {return (F[a] == -1 ? a : F[a] = find(F[a]));}

void uunion(int a, int b) {
    a = find(a); b = find(b);
    if (a == b) return;
    F[a] = b;
}


int construct(std::vector<std::vector<int>> p) {
    int n = p.size();
    vvi Adj(n, vi(n, 0));
    L.clear(); F.clear(); F.resize(n, -1);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < n; j++) {
            if (p[i][j]) {
                uunion(i, j);
                continue;
            }
            //cerr << i << " " << j << " " << find(i) << " " << find(j) << endl;
            if (find(i) == find(j)) return 0;
        }
    }
    L.resize(n);
    for (int i = 0; i < n; i++) {
        L[find(i)].push_back(i);
    }
    for (auto i : L) {
        if (i.size() == 0) continue;
        if (i.size() <= 2) return 0;
        for (int j = 0; j < i.size(); j++) {
            int a = i[(j+1)%i.size()];
            int b = i[j];
            Adj[b][a] = 1;
            Adj[a][b] = 1;
        }
    }
    build(Adj);
    return 1;
}

Compilation message

supertrees.cpp: In function 'int construct(std::vector<std::vector<int> >)':
supertrees.cpp:46:27: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   46 |         for (int j = 0; j < i.size(); j++) {
      |                         ~~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Answer gives possible 0 while actual possible 1
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Answer gives possible 0 while actual possible 1
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Answer gives possible 0 while actual possible 1
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Answer gives possible 0 while actual possible 1
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Answer gives possible 0 while actual possible 1
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Answer gives possible 0 while actual possible 1
2 Halted 0 ms 0 KB -