Submission #533213

#TimeUsernameProblemLanguageResultExecution timeMemory
533213devariaotaBosses (BOI16_bosses)C++17
67 / 100
1518 ms220952 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long ll n; vector<ll> adj[5005]; ll dist[5005][5005]; bool vis[5005][5005]; ll bfs(ll x) { queue <ll> q; q.push(x); ll sum = 1; dist[x][x] = 1; ll mx = 0; vis[x][x] = true; while(!q.empty()) { ll cur = q.front(); q.pop(); for(ll i = 0; i < adj[cur].size(); i++) { ll next = adj[cur][i]; if (!vis[next][x]) { vis[next][x] = true; dist[next][x] = dist[cur][x] + 1; sum += dist[next][x]; mx = max(mx, dist[next][x]); q.push(next); } } } return sum; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin >> n; for(ll i = 1; i <= n; i++) { ll k; cin >> k; for(ll j = 0; j < k; j++) { ll next; cin >> next; adj[next].push_back(i); //cout << next << " " << i << endl; } } ll mn = LLONG_MAX; for(ll i = 1; i <= n; i++) { int ans = bfs(i); bool flag = true; for(ll j = 1; j <= n; j++) { if (!vis[j][i]) { flag = false; break; } } if (flag && ans < mn) { mn = ans; } } cout << mn << "\n"; }

Compilation message (stderr)

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