Submission #1014573

#TimeUsernameProblemLanguageResultExecution timeMemory
1014573qnicondavid23Bosses (BOI16_bosses)C++14
0 / 100
1 ms348 KiB
// Source: https://usaco.guide/general/io #include <bits/stdc++.h> using namespace std; int n; int x,a; vector<vector<int>> A; vector<bool> fr; vector<vector<int>> G; void bfs(int nod) { queue<int> Q; Q.push(nod); fr[nod]=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]) { G[cap].push_back(vecin); fr[vecin]=1; Q.push(vecin); } } } } int sum=0; int dfs(int nod) { int s=0; for(int i=0;i<G[nod].size();i++) { int vecin=G[nod][i]; s=s+dfs(vecin); } sum=sum+s+1; return s+1; } 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); G.resize(0); G.resize(n+1); sum=0; bfs(i); for(int j=1;j<=n;j++) if(!fr[j]) continue; dfs(i); mini=min(mini,sum); } cout<<mini; return 0; }

Compilation message (stderr)

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