Submission #68921

#TimeUsernameProblemLanguageResultExecution timeMemory
68921VahanBosses (BOI16_bosses)C++17
100 / 100
769 ms1276 KiB
#include<iostream> #include<vector> #include<deque> #include<cstdio> using namespace std; vector<int> g[20000]; deque<int> q; int n,pp,u[100000],pat=-1; int main() { cin>>n; for(int i=1;i<=n;i++) { int a; scanf("%d",&a); for(int j=1;j<=a;j++) { int b; scanf("%d",&b); if(i!=b) g[b].push_back(i); } } for(int i=1;i<=n;i++) { q.push_back(i); u[i]=1; int t=0; pp=0; while(!q.empty()) { int v=q.front(); q.pop_front(); pp+=u[v]; t++; for(int j=0;j<g[v].size();j++) { int to=g[v][j]; if(u[to]==0) { u[to]=u[v]+1; q.push_back(to); } } } if(t==n) { if(pp<pat || pat==-1) pat=pp; } else q.clear(); for(int j=1;j<=n;j++) u[j]=0; } cout<<pat<<endl; return 0; }

Compilation message (stderr)

bosses.cpp: In function 'int main()':
bosses.cpp:36:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
             for(int j=0;j<g[v].size();j++)
                         ~^~~~~~~~~~~~
bosses.cpp:15:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d",&a);
         ~~~~~^~~~~~~~~
bosses.cpp:19:18: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
             scanf("%d",&b);
             ~~~~~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...