제출 #393129

#제출 시각아이디문제언어결과실행 시간메모리
393129Carmel_Ab1슈퍼트리 잇기 (IOI20_supertrees)C++17
0 / 100
1 ms204 KiB
#include <bits/stdc++.h>
#include "supertrees.h"
//#include "grader.cpp"
using namespace std;

typedef vector<int> vi;
typedef vector<vi> vvi;

vvi who;
vector<bool>vis;
vvi P;
void dfs(int src){
    int n=vis.size();
    vis[src]=1;
    who.back().push_back(src);
    for(int nbr=0; nbr<n; nbr++)
        if(P[src][nbr]==2 && !vis[nbr])
            dfs(nbr);
}
int construct(vvi p) {
    int n = p.size();
    vvi ans(n,vi(n));
    P=vvi(p);
    vis.resize(n);

    for(int i=0; i<n; i++){
        if(!vis[i]){
            who.push_back({});
            dfs(i);
        }
    }
    for(int i=0; i<who.size(); i++)
        for(int j=0; j<who[i].size(); j++){
            ans[who[i][j]][who[i][(j+1)%who[i].size()]]=1;
            ans[who[i][(j+1)%who[i].size()]][who[i][j]]=1;
        }
    build(ans);
    return 1;
}

컴파일 시 표준 에러 (stderr) 메시지

supertrees.cpp: In function 'int construct(vvi)':
supertrees.cpp:32:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::vector<int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   32 |     for(int i=0; i<who.size(); i++)
      |                  ~^~~~~~~~~~~
supertrees.cpp:33:23: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   33 |         for(int j=0; j<who[i].size(); j++){
      |                      ~^~~~~~~~~~~~~~
#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...