Submission #139766

#TimeUsernameProblemLanguageResultExecution timeMemory
139766rzbtBosses (BOI16_bosses)C++14
67 / 100
1571 ms1016 KiB
#include <bits/stdc++.h> #define MAXN 5005 #define pb push_back using namespace std; int n; vector<int> niz[MAXN]; vector<int> cudni[MAXN]; queue<int> q; int posecen[MAXN]; int tp; void bfs(int s){ int t; for(int i=1;i<=n;i++) if(!cudni[i].empty()) cudni[i].clear(); tp=0; q.push(s); posecen[s]=s; while(!q.empty()){ tp++; t=q.front(); q.pop(); for(auto x:niz[t]){ if(posecen[x]==s)continue; cudni[t].pb(x); posecen[x]=s; q.push(x); } } } int res=1e9; int ucena; int dfs(int t){ int cena=1; for(auto x:cudni[t]) cena+=dfs(x); ucena+=cena; return cena; } int main() { scanf("%d", &n); for(int i=1;i<=n;i++){ int tk; scanf("%d", &tk); for(int j=0;j<tk;j++){ int t; scanf("%d", &t); niz[t].pb(i); } } for(int i=1;i<=n;i++){ bfs(i); if(tp!=n)continue; ucena=0; dfs(i); res=min(res,ucena); } printf("%d",res); return 0; }//

Compilation message (stderr)

bosses.cpp: In function 'int main()':
bosses.cpp:51:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &n);
         ~~~~~^~~~~~~~~~
bosses.cpp:54:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
             scanf("%d", &tk);
             ~~~~~^~~~~~~~~~~
bosses.cpp:57:22: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
                 scanf("%d", &t);
                 ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...