Submission #159455

#TimeUsernameProblemLanguageResultExecution timeMemory
159455a_playerBosses (BOI16_bosses)C++14
100 / 100
995 ms760 KiB
#include <bits/stdc++.h> using namespace std; vector<int> grafo[5001]; int val[5001]; bitset<5001> v; int N; int bfs(int in){ v.reset(); memset(val,0,sizeof(val)); int s=0; queue<int> q; q.push(in); v[in]=1; val[in]=1; while(!q.empty()){ int co=q.front(); q.pop(); s+=val[co]; for(int i=0;i<grafo[co].size();i++){ if(!v[grafo[co][i]]){ val[grafo[co][i]]=val[co]+1; v[grafo[co][i]]=1; q.push(grafo[co][i]); } } } for(int i=0;i<N;i++)if(!v[i])return (int)1e9; return s; } int main(){ cin>>N; for(int i=0;i<N;i++){ int n; cin>>n; for(int j=0;j<n;j++){ int a; cin>>a; grafo[a-1].push_back(i); } } int mini=bfs(0); for(int i=1;i<N;i++){ mini=min(mini,bfs(i)); } cout<<mini; }

Compilation message (stderr)

bosses.cpp: In function 'int bfs(int)':
bosses.cpp:22:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
       for(int i=0;i<grafo[co].size();i++){
                   ~^~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...