Submission #695190

#TimeUsernameProblemLanguageResultExecution timeMemory
695190Ahmed_SolymanBosses (BOI16_bosses)C++14
0 / 100
1 ms340 KiB
#include<bits/stdc++.h> using namespace std; vector<int>adj[5005]; vector<long long>s(5005); vector<bool>vis(5005); void dfs(int n){ vis[n]=1; s[n]=1; vector<int>v; for(auto i:adj[n]){ if(!vis[i]){ vis[i]=1; v.push_back(i); } } for(auto i:v){ dfs(i); s[n]+=s[i]; } } int main(){ int n;cin>>n; for(int i=1;i<=n;i++){ int k;cin>>k; for(int j=0;j<k;j++){ int x;cin>>x; adj[x].push_back(i); } } long long ans=4e18; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ vis[j]=0; s[j]=0; } dfs(i); long long sum=0; for(int j=1;j<=n;j++){ sum+=s[j]; if(!vis[j]){ sum=1e18; } } ans=min(ans,sum); } cout<<ans<<endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...