제출 #1015988

#제출 시각아이디문제언어결과실행 시간메모리
1015988qnicondavid23Bosses (BOI16_bosses)C++14
100 / 100
472 ms860 KiB
#include <vector> #include <iostream> #include <queue> using namespace std; //ifstream cin("date.in"); //ofstream cout("date.out"); int n; int x, a; vector<vector<int>> A; vector<int> fr; int sum; void bfs(int nod) { queue<int> Q; Q.push(nod); fr[nod] = 1; sum = 1; while (!Q.empty()) { int cap = Q.front(); Q.pop(); for (int i = 0; i < A[cap].size(); i++) { int vecin = A[cap][i]; if (!fr[vecin]) { fr[vecin] = fr[cap]+1; sum = sum + fr[vecin]; Q.push(vecin); } } } } int main() { cin >> n; A.resize(n + 1); for (int i = 1; i <= n; i++) { cin >> x; for (int j = 0; j < x; j++) { cin >> a; A[a].push_back(i); } } int mini = 0x3f3f3f3f; for (int i = 1; i <= n; i++) { fr.resize(0); fr.resize(n + 1); sum = 0; bfs(i); bool ok = 1; for (int j = 1; j <= n; j++) if (fr[j]==0) { ok = 0; break; } if (!ok) continue; mini = min(mini, sum); } cout << mini; return 0; }

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

bosses.cpp: In function 'void bfs(int)':
bosses.cpp:24:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   24 |   for (int i = 0; i < A[cap].size(); i++)
      |                   ~~^~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...